0
我有以下代碼:FSEEK不空文件工作
int main(int argc,char *argv[]){
FILE *fp;
if(argc != 2){
perror("Please specify a file");
return 1;
}
if((fp=fopen(argv[1], "rb")) == 0){
perror("File not found!");
return 2;
}
int a = fseek(fp, 1000, SEEK_CUR);
if(a<0){
printf("fail\n");
}
fclose(fp);
return 0;
}
當我把這稱爲一個空的二進制文件,不會發生錯誤,但是前夕,我希望FSEEK()的返回-1 。有誰知道爲什麼這不會發生?
是的,就是這樣。謝謝! – tomooka 2015-02-08 20:02:39
這是設計。如果您在程序中的'fseek'調用之後調用'fwrite(string,1,strlen(string),fp)'調用,則該文件將在字符串前填充1000個空字符。 – selbie 2015-02-08 20:02:41