在vs2008里用fopen函数时返回 错误的指针
- C/C++ code
int ReadDat(){ FILE *fp; int i = 0; char *p; if(NULL == (fp = fopen("G:\\eng.in","r"))) { return 1; } while(fgets(xx[i],80,fp) != NULL) { i++; } maxline = i; fclose(fp);}在while处设置断点,提示为:fp = 0x10311448 {_ptr=0x00000000 <错误的指针> _cnt=0 _base=0x00000000 <错误的指针> ...}
不过以前运行这段代码是好使的,也不知道碰那了,突然就不好使了。
不面是全部代码:
- C/C++ code
#include <stdio.h>#include <string.h>#include <ctype.h>char xx[50][80];int maxline = 0;int ReadDat();void WriteDat();void DelWord();void main(){ if(ReadDat()) { printf("数据文件ENG.IN不能打开\n\007"); return; } DelWord(); <(const S[解决办法]
- C/C++ code
看看你有没包含 file.open所需要的头文件c++里面,我直接#include <fstream>ofstream of("...");
[解决办法]
程序没有问题,
可能是你的输入文件格式有问题