私は、ファイル名を引数として取り、ファイルを開き、その内容を解析して、いくつかのことを行うプログラムを作成しました。私はそれを実行することによってそのプログラムをテストするテストプログラムを書いています。
これが私のテストクラスです:
int main () {
FILE *input;
input = fopen("file.txt", "w+");
if (input == NULL) {
fprintf(stderr, "Unable to create a new file");
exit(1);
}
fprintf(input, "8\n");
if (execl("./a.out", "./a.out", "file.txt", NULL) == -1) {
fprintf(stderr, "Error forking program\n");
exit(1);
}
return 0;
}
を開くfile.txt
と、空白のファイルしか表示されません。私の./a.out
プログラムは解析エラーを出している(fgets
NULLを返している)file.txt
が、書き込まれていないためだと思う。ここでの問題は何ですか?このような問題をデバッグするにはどうすればよいですか?なぜfprintf
ファイルに書き込まないのでしょうか。
ありがとうございました、