以下のコードを使用してファイルからcharを読み取り、別のcharに置き換えますが、ファイルの終わりに行くときにerror.loopが発生します。
なにが問題ですか?
このコードをLinux(netbeans IDE)でテストしたところ、正しく機能していましたが、WindowsでVS 2008を使用しようとすると、非終了ループが見つかりました。
//address = test.txt
FILE *fp;
fp=fopen(address,"r+");
if(fp == 0)
{
printf("can not find!!");
}
else
{
char w = '0'; /// EDIT : int w;
while(1)
{
if((w = fgetc(fp)) != EOF)
{
if((w = fgetc(fp)) != EOF)
{
fseek(fp,-2,SEEK_CUR);
fprintf(fp,"0");
}
}
else
{
break;
}
}
}
fclose(fp);