回答編集履歴
2
追記
answer
CHANGED
@@ -1,4 +1,9 @@
|
|
1
1
|
`scanf("%s", str);`だと、**空白文字**までの読み取りになります。
|
2
2
|
ですので、strには最初から`123`しか入力できていません。
|
3
3
|
|
4
|
-
一行まるまる取得したいならfgetsを使うか、書式指定子を`%[^\n]`にしてください。
|
4
|
+
一行まるまる取得したいならfgetsを使うか、書式指定子を`%[^\n]`にしてください。
|
5
|
+
|
6
|
+
> なぜ、区切り文字を半角スペースにするとうまく分割することができなくなってしまうのでしょうか?
|
7
|
+
|
8
|
+
半角スペースは空白文字の一つだから。
|
9
|
+
参考: [C言語関数辞典 - C言語用語集 - 標準空白類文字](http://www.c-tipsref.com/words/s_white_space_character.html)
|
1
修正
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
1
|
`scanf("%s", str);`だと、**空白文字**までの読み取りになります。
|
2
2
|
ですので、strには最初から`123`しか入力できていません。
|
3
3
|
|
4
|
-
一行まるまる取得したいならfgetsを使うか、書式指定子を`%[^\n]
|
4
|
+
一行まるまる取得したいならfgetsを使うか、書式指定子を`%[^\n]`にしてください。
|