为什么return 0后程序没有结束!调用栈有关问题?
为什么return 0后程序没有结束!!调用栈问题???
为什么会这样 搞不懂啊!!
调用栈显示一大堆,是哪里的问题啊 !!
------解决方案--------------------
char *out; 没有申请空间是野指针,最好利用Malloc 函数进行初始化
- C/C++ code
#include<stdio.h> #include<stdlib.h> int main() { char *ch="nii.txt"; FILE * fi=fopen(ch,"w"); if(fi==NULL) return -1; fputs("12345nihao67890qwertyu",fi); int aa=fputc('X',fi); fclose(fi); putchar(aa); fi=fopen(ch,"r"); if(fi==NULL) return -1; printf("%c\n",fgetc(fi)); printf("%c\n",getc(fi)); char * out; fscanf(fi,"%s",out); char cc; while(sscanf(out,"%c",&cc)!=EOF) { printf("%c\n",cc); out++; } fclose(fi); fi=fopen(ch,"r");//[color=#FF0000]跳到了这里[/color] fscanf(fi,"%s",out); printf("%s\n",out); fclose(fi); return 0; [color=#FF0000]//调试发现运行到这里后有跳到上面的标注出[/color]}
为什么会这样 搞不懂啊!!
调用栈显示一大堆,是哪里的问题啊 !!
------解决方案--------------------
char *out; 没有申请空间是野指针,最好利用Malloc 函数进行初始化