我正在寻找一个有效的条件来检查用户是否正在写入字符。我尝试使用 (n!=char),但这在 C 中显然不可能,对吗?
这就是我所拥有的:
char n;
do
{
printf("Introduce a caracter\n");
scanf("%c", &n);
if(n!=char)
printf("Error! The caracter you introduced is not valid.\n");
}
while(n!=char);
return n;
最佳答案
由于您只需要字母,无论大小写,您可以在 if 语句中使用此条件进行检查。
if((n<'a' || 'z'<n) && (n<'A' || 'Z'<n))
printf("Error! The caracter you introduced is not valid.\n");
这意味着:
如果“n”不在“a-z”之间且不在“A-Z”之间的字符反转中,则错误
您可以将字符视为存储的整数,考虑 de ascii chart .
关于c - 使用 char 验证数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29349365/