質問編集履歴
1
マークダウンの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -7,19 +7,19 @@
|
|
7
7
|
現在、c言語を学習しており、catコマンドをc言語を用いて作ってみる、という課題を行なっています。
|
8
8
|
|
9
9
|
### 発生している問題・エラーメッセージ
|
10
|
-
|
10
|
+
下記にソースコード全文を掲載しましたが、以下の部分が質問の該当箇所となります
|
11
11
|
```
|
12
|
-
下記にソースコード全文を掲載しましたが、以下の部分が質問の該当箇所となります
|
13
|
-
|
14
|
-
else
|
12
|
+
else
|
13
|
+
{
|
15
|
-
while((c = fgetc(f)) != EOF)
|
14
|
+
while((c = fgetc(f)) != EOF)
|
15
|
+
{
|
16
16
|
if(putchar(c) < 0) exit(1);
|
17
17
|
}
|
18
|
-
}
|
18
|
+
}
|
19
|
-
|
19
|
+
```
|
20
20
|
これは、条件式の中でputchar(c)を実行して、負数でなければその関数を実行するという処理を、if文の条件式の中だけで完結させているという認識で合っているのでしょうか?
|
21
21
|
今までの経験だと、条件式の後に必ず処理内容が入っていたので、条件式だけで処理を完結させていることに違和感があり、質問させて頂きました。
|
22
|
-
|
22
|
+
|
23
23
|
|
24
24
|
### 該当のソースコード
|
25
25
|
```
|
@@ -36,18 +36,20 @@
|
|
36
36
|
{
|
37
37
|
f = fopen(argv[i],"r");
|
38
38
|
|
39
|
-
if(!f)
|
39
|
+
if(!f)
|
40
|
+
{
|
40
41
|
perror(argv[i]);
|
41
42
|
exit(1);
|
42
43
|
}
|
43
44
|
|
44
|
-
else
|
45
|
+
else
|
46
|
+
{
|
45
|
-
while((c = fgetc(f)) != EOF)
|
47
|
+
while((c = fgetc(f)) != EOF)
|
48
|
+
{
|
46
49
|
if(putchar(c) < 0) exit(1);
|
47
50
|
}
|
48
|
-
}
|
51
|
+
}
|
49
52
|
exit(0);
|
50
|
-
|
51
53
|
}
|
52
54
|
}
|
53
55
|
```
|