这段代码 怎么可能有错呢?????
#include <stdio.h>
#include <string.h>
main()
{
FILE *f;
char ch;
char sqlcom[255];
if(f=fopen("sqlfile","r+")==NULL )
{
printf("sqlfile文件不存在\n");
exit(1);
}
else
{ ch=fgetc(f);
if (ch!=EOF)
{
putchar(ch);
ch=fgetc(f);
}
}
fclose(f);
}
很简单的文件打开嘛(本人只是为了测试,因为在我另外一项目程序中文件操作也 tmd老出错,,闷)
编译的时候 提示警告:
fu.c: In function `main':
fu.c:8: warning: assignment makes pointer from integer without a cast
忽略( 也请高手帮看看)
运行./fu
报错: Segmentation fault (@#$#!%$,,闷,有好多个次程序都报此错,苦闷求助)
gdb 单步调试, 发现是执行到 ch=fgetc(f); 时出错了:
Program received signal SIGSEGV, Segmentation fault.
0x400957bf in getc () from /lib/libc.so.6
高手呀,,请花点时间指点迷津好吗,