回答編集履歴
1
少し補足
test
CHANGED
@@ -10,13 +10,15 @@
|
|
10
10
|
|
11
11
|
コンソールからの入力は、通常1行単位でバッファリングされます。
|
12
12
|
|
13
|
-
つまり、Enterキーを押して
|
13
|
+
つまり、Enterキーを押して初めてユーザ・プログラムへ渡されます。
|
14
14
|
|
15
|
-
1とEnterを押した場合、1という文字とEnter文字('\')の計2文字が渡されます。
|
15
|
+
従って、1とEnterを押した場合、1という文字とEnter文字('\')の計2文字が渡されます。
|
16
16
|
|
17
17
|
その結果、最初の1に対して「登録をする」が表示され、次の'\n'に対して「入力エラー!」が表示されます。
|
18
18
|
|
19
|
+
|
20
|
+
|
19
|
-
'\n'の時何もしないと良いと思います。
|
21
|
+
この場合の対策としては、'\n'の時何もしないと良いと思います。
|
20
22
|
|
21
23
|
例えば下記のようなイメージです。
|
22
24
|
|
@@ -34,4 +36,4 @@
|
|
34
36
|
|
35
37
|
```
|
36
38
|
|
37
|
-
他に
|
39
|
+
他にfgets()を使う等の対策も考えられます。
|