%d または %f で scanf を使用すると、空白文字がスキップされます。一方、 %c とともに使用すると、空白文字が読み取られます。なぜこれが起こるのか、誰かがこれについて詳しく説明できますか?
以下のコードのように %d または %f を使用すると、空白文字が自動的にスキップされます
#include<stdio.h>
void main(void)
{
int i;
scanf("%d ",&i);
}
このように入力を読むと
#include<stdio.h>
void main(void)
{
char ch;
scanf(" %c ",&ch);
scanf(" %c",&ch); /*or like this*/
}
空白文字をスキップします。scanf がフォーマット指定子で異なる動作を示すのはなぜですか????