回答編集履歴
1
マークダウン追加
    
        answer	
    CHANGED
    
    | @@ -9,8 +9,10 @@ | |
| 9 9 | 
             
            例えば
         | 
| 10 10 | 
             
            <space>123<enter><space>ABC<space><enter>
         | 
| 11 11 | 
             
            という標準入力を
         | 
| 12 | 
            +
            ```c
         | 
| 12 13 | 
             
            scanf("%d",&i); //int i
         | 
| 13 14 | 
             
            scanf("%[^\n]%*c",s); //char s[N];
         | 
| 15 | 
            +
            ```
         | 
| 14 16 | 
             
            で処理した場合、
         | 
| 15 17 | 
             
            1つ目の scanf で <space> がホワイトスペースとして無視、"123" が処理されて i が 123 になり、2つ目の scanf で 123 の後ろの <enter> が処理されて s が "" になり、標準入力には <space>ABC<space><enter> が残ります。
         | 
| 16 18 | 
             
            もし 2つ目が scanf("%s",s) だったら、 123 の後ろの <enter> と ABC の前の <space> はホワイトスペースとして無視、 "ABC" が処理されて s は "ABC" となり、標準入力には <space><enter> が残ります。
         | 
