teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

文言

2021/08/10 07:23

投稿

int32_t
int32_t

スコア21933

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("text.txt");
17
+ perror("test.txt");
16
18
  return EXIT_FAILURE;
17
19
  }
18
- ```
20
+ ```
19
-
20
-
21
- そのディレクトリに `test.txt` を置くか、コードの方を `test.txt`のフルパスに修正するか、でしょう。

1

コード修正

2021/08/10 07:23

投稿

int32_t
int32_t

スコア21933

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`のフルパスに修正するか、でしょう。