为什么读取文件会出错?
文件读写字符串,
写入代码是:
const char * szString;
...
int nLen=strlen(szString)+1;
fwrite(&nLen,sizeof(int),1,pFile);
fwrite(szString,1,nLen,pFile);
读取代码:
int nLen;
char * szString;
fread(&nLen,sizeof(int),1,pFile);//这里错,nLen是一个非常大的值
szString=(char *)malloc(nLen);
fread(szString,1,nLen,pFile);
这个错误有时候有,有时候没有,为什么?