scanfと改行文字について

469 ワード

scanfは文字列を読み込むと改行を自動的に無視するので
char ch,a[10],b[10];
	scanf("%s",a);
	scanf("%s",b);
	printf("%s",a);
	printf("%s",b);

abcリターンdefが入力されるとabcdefが出力される
しかし、改行はバッファに残っているので、scanfの後ろに行を追加する必要があります.
getchar();

残りの改行を削除
特に、scanf(“%c”,&a)は改行文字を読み出す
一般的には、scanfは対応するタイプのみを読み込むため、毎回getcharを付ける必要はありませんが、後のプログラムで文字を読み取る場合は、必ずgetcharを付けてバッファ内のリターン記号を除去しなければなりません.