回答編集履歴
2
文言
answer
CHANGED
@@ -8,14 +8,13 @@
|
|
8
8
|
`fopen()`が失敗する典型的な理由は、指定したファイルが開けないことです。
|
9
9
|
このコードの場合は、**実行ファイル起動時のカレントディレクトリ**に `test.txt` が存在している必要があります。
|
10
10
|
|
11
|
+
そのディレクトリに `test.txt` を置くか、コードの方を `test.txt`のフルパスに修正するか、でしょう。
|
12
|
+
|
11
13
|
また、`fopen()`の戻り値は必ずNULLチェックしましょう。例:
|
12
14
|
```c
|
13
15
|
file = fopen(...);
|
14
16
|
if (!file) {
|
15
|
-
perror("
|
17
|
+
perror("test.txt");
|
16
18
|
return EXIT_FAILURE;
|
17
19
|
}
|
18
|
-
```
|
20
|
+
```
|
19
|
-
|
20
|
-
|
21
|
-
そのディレクトリに `test.txt` を置くか、コードの方を `test.txt`のフルパスに修正するか、でしょう。
|
1
コード修正
answer
CHANGED
@@ -8,4 +8,14 @@
|
|
8
8
|
`fopen()`が失敗する典型的な理由は、指定したファイルが開けないことです。
|
9
9
|
このコードの場合は、**実行ファイル起動時のカレントディレクトリ**に `test.txt` が存在している必要があります。
|
10
10
|
|
11
|
+
また、`fopen()`の戻り値は必ずNULLチェックしましょう。例:
|
12
|
+
```c
|
13
|
+
file = fopen(...);
|
14
|
+
if (!file) {
|
15
|
+
perror("text.txt");
|
16
|
+
return EXIT_FAILURE;
|
17
|
+
}
|
18
|
+
```
|
19
|
+
|
20
|
+
|
11
21
|
そのディレクトリに `test.txt` を置くか、コードの方を `test.txt`のフルパスに修正するか、でしょう。
|