我有这个扫描函数:
scanfResult = scanf("%s%d%d", X, &LO, &HI);
我需要写一个条件,它只接受scanf函数中第二和第三位的整数(在%d所在的位置(,而不接受任何字母。我可以写这样的东西:
if (HI == 0 || LO == 0){
printf("Wrong input.n");
return 0;
}
然而,它不接受int"0"作为输入,我想接受它。如何写一个条件,使它可以接受零个字母,但不能接受任何字母?(我是初学者(
我的输入是:
c 45 abc
您可以使用带有getchar((的while循环。输入允许使用的字母表的代码。像这个
while (1) {
ch = getchar();
// if ch is <enter key > the break
if (policyOK( ch ) ) {
printf("%c", ch );
} else {
// print a beep sound or don't do anything
}
}