求助:第一次用vs2017学c语言,为啥运行不了,在vc++上面还能运行的?

求助大佬,这是怎么回事,要怎么才能解决?下面的显示是这样的:
图片说明

代码原文:

#define  OK    1

#define ERROR 0

#define OVERFLOW -2

#define STACK_INIT_SIZE 100

#define STACKINCREMENT 10

typedef struct

{

int *base;

int *top;

int stacksize;

}SqStack;

SqStack S;

int e;

int InitStack()

{

S.base = (int*)malloc(STACK_INIT_SIZE * sizeof(int));

if (!S.base) return OVERFLOW;

S.top = S.base;

S.stacksize = STACK_INIT_SIZE;

return OK;

}

int GetTop()

{

if (S.top == S.base) return ERROR;

e = *(S.top - 1);

return OK;

}

int Push(int g)

{

if (S.top - S.base >= S.stacksize)

{

S.base = (int *)realloc(S.base,

(S.stacksize + STACKINCREMENT) * sizeof(int));

if (!S.base) return OVERFLOW;

S.top = S.base + S.stacksize;

S.stacksize += STACK_INIT_SIZE;

}

*S.top++ = g;

return OK;

}

int Pop()

{

if (S.top == S.base) return ERROR;

e = *--S.top;

return OK;

}

void main()

{

int a[10];

int i, j, k;

for (i = 0; i < 10; i++)

{

scanf("%d", &a[i]);

}

InitStack();

for (j = 0; j < 10; j++)

Push(a[j]);

for (k = 10; k > 0; k--)

{

Pop();

printf("%d ", e);

}

}

回答

缺少include头文件

scanf printf来自 stdio.h

malloc 来自 stdlib.h

以上是 求助:第一次用vs2017学c语言,为啥运行不了,在vc++上面还能运行的? 的全部内容, 来源链接: utcz.com/a/55421.html

回到顶部