C言語なら俺に聞け! Part 114
■ このスレッドは過去ログ倉庫に格納されています
0501デフォルトの名無しさん
2005/09/22(木) 18:27:193.整数データのキー入力
〜ちゃんと整数データを入力するまで繰り返す〜
scanfは取り込めたデータ数を返すから、
整数データが読み込まれたことをチェックし、
誤った入力なら再入力を要求すれば!...ところが...
/* scanf */
#include <stdio.h>
main()
{
charbuf[256];
inti;
do
{
printf("終了は Ctrl+C \n");
printf("Input number: ");
} while( scanf("%d", &i ) != 1 );
printf("%d\n", i );
}
/* scanfd1.c */
整数データを入力すれば大丈夫だが、
それ以外のデータを入力するとどうなる?!
scanfは空白文字までを目処に、整数とパターンマッチさせていく
それ以外の文字が入力されていると、パターンにマッチしないので、
マッチングの候補として残ったままになる→だから暴走する!
■ このスレッドは過去ログ倉庫に格納されています