私はファイルI/Oの概念をC言語で学びたいと考えています。私はGNU/Linux(Ubuntu 16.04 LTS)を使用しています。私のIDEはeclipse 3.8です。 fprintf()
メソッドでファイルに書き込もうとすると、ファイルが作成されないか、ファイルが作成されていても書き込まれません。私はfflush()
またはsetbuf(file_pointer, NULL)
メソッドを使用して問題を解決しようとしましたが、hereが提案されていますが、変更はありません。私は間違った方法でファイルのアドレスを書いていると思います。ここでubuntuでfprintf()が動作しません
はコードです:
#include <stdio.h>
int main(void){
FILE *file_pointer;
file_pointer=fopen("~/.textsfiless/test.txt","w+");
setbuf(file_pointer,NULL);
fprintf(file_pointer,"Testing...\n");
fclose(file_pointer);
return EXIT_SUCCESS;
}
誰かがここで間違っているかを説明することはできますか?
ファイル 'fopen'の後に' setbuf(file_pointer、NULL); 'を実行する必要があります... – LPs
' fopen() 'の成功を確認するのはなぜですか? –
'fopen'戻り値をチェックしてください。ファイルパスが間違っていると失敗します。 – LPs