回答編集履歴
1
cは`char`じゃなくて`int`です。
answer
CHANGED
@@ -31,7 +31,7 @@
|
|
31
31
|
buf[0] = '\0'; // 空文字にしておく
|
32
32
|
while (scanf(BUF_SCAN_S, p) == 1) {
|
33
33
|
// 次の文字をチェック
|
34
|
-
|
34
|
+
int c = getchar();
|
35
35
|
// 入力が閉じられているのでscanfで見るのは終わり
|
36
36
|
if (c == EOF) {
|
37
37
|
break;
|
@@ -81,7 +81,7 @@
|
|
81
81
|
return 1;
|
82
82
|
}
|
83
83
|
p = buf;
|
84
|
-
|
84
|
+
int c;
|
85
85
|
while ((c = getchar()) != EOF) {
|
86
86
|
// 空白文字なら、バッファに戻して終わり
|
87
87
|
if (isspace(c)) {
|
@@ -157,4 +157,8 @@
|
|
157
157
|
}
|
158
158
|
```
|
159
159
|
|
160
|
-
他とあわせるために、`char *buf;`にしていますが、一番すっきりします。
|
160
|
+
他とあわせるために、`char *buf;`にしていますが、一番すっきりします。
|
161
|
+
|
162
|
+
---
|
163
|
+
|
164
|
+
`getchar()`の戻り値を`char`に入れてた…泣きたい。
|