|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
主要问题不在括号匹配
而是这个,,我截取了足够运行函数的部分
- #include <stdio.h>
- #include <stdlib.h>
- #define STACK_INIT_SIZE 20
- #define STACKINCREMENT 10
- typedef char ElemType;
- typedef struct
- {
- ElemType *top;
- ElemType *base;
- int stackSize;
- }sqStack;
- //初始化栈
- InitStack(sqStack *s)
- {
- s->base = (sqStack*)malloc(STACK_INIT_SIZE * sizeof(ElemType));
- if(!s->base)
- exit(0);
- s->top = s->base;
- s->stackSize = STACK_INIT_SIZE;
- }
- int main()
- {
- int k = 0;
- printf("k = %d\n",k); //这里k == 0
- ElemType c,d;
- sqStack *s;
- printf("k = %d\n",k); //这里k ==0
- InitStack(&s);
- printf("k = %d\n",k); //这里k!=0(好奇怪)
- return 0;
- }
复制代码
编译器帮你检查出了问题,但是你却偏偏忽略了它
- 1>main.c
- 1>c:\visualstudioprojects\c\c\main.c(20): warning C4133: “=”: 从“sqStack *”到“ElemType *”的类型不兼容
- 1>c:\visualstudioprojects\c\c\main.c(36): warning C4047: “函数”:“sqStack *”与“sqStack **”的间接级别不同
- 1>c:\visualstudioprojects\c\c\main.c(36): warning C4024: “InitStack”: 形参和实参 1 的类型不同
- 1>c:\visualstudioprojects\c\c\main.c(33): warning C4101: “c”: 未引用的局部变量
- 1>c:\visualstudioprojects\c\c\main.c(33): warning C4101: “d”: 未引用的局部变量
- 1>C.vcxproj -> C:\VisualStudioProjects\C\Debug\C.exe
- 1>已完成生成项目“C.vcxproj”的操作。
- ========== 全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ==========
复制代码
|
-
|