こんにちは、ファイルにデータを書き込もうとしているときに、fopen と fputs に苦労しています。
特に、次のコード:
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE * fp;
fp = fopen ("file_out.txt", "a+");
fprintf(fp, "%s %s %s %d", "We", "are", "in", 2016);
fclose(fp);
return(0);
}
この出力が得られます:私たちは2016年にいます
これは私が期待し、望んでいたことです。
しかし、私が変わるとき
fprintf(fp, "%s %s %s %d", "We", "are", "in", 2016);
に
fprintf(fp, "%s %s %s %d", "We", "are", "in", 3333);
再コンパイルして実行すると、以前と同じ出力が得られます。つまり、3333 ではなく 2016 が印刷されています。