我目前正在getc()
循环中使用来接收用户的输入:
char x;
while (x != 'q')
{
printf("(c)ontinue or (q)uit?");
x = getc(stdin);
}
如果用户进入c
循环执行,大概是第一次输入一个额外的字符(终止符或换行符,我猜?)作为输入。
我可以通过使用类似的东西来防止这种情况:
char toss;
char x;
while (x != 'q')
{
printf("(c)ontinue or (q)uit?");
x = getc(stdin);
toss = getc(stdin);
}
但这让我觉得这只是一种懒惰的新手处理它的方式。有没有更简洁的方法来做到这一点,getc
或者我应该将它用作字符串并使用数组的第一个字符?还有另一种我什至没有考虑过的更清洁的方法吗?