Windowsでは、
char c;
int i;
scanf("%d", &i);
scanf("%c", &c);
'\ n'がバッファに残っているため、コンピュータはコンソールからの文字の取得をスキップします。ただし、以下のコードが適切に機能することがわかりました。
char str[10];
int i;
scanf("%d", &i);
scanf("%s", str);
上記の場合と同様に、「\ n」はバッファに残っていますが、scanfが今回コンソールから文字列を正常に取得するのはなぜですか?