c语言判断越界
要求输入一串字符数字,其中字符串数为8进制数,要将其转换为10进制数输出! 其中如何对字符串中的字符数字做保护使其在>=8时候提示“输入有误!”! 8进制在0~7嘛。用getchar()逐一读取 然后判断ASCII 呗 本帖最后由 565123 于 2013-9-21 11:17 编辑
int isValid(char *str)
{
if (*str == 0) //如果是空字符串,返回假
return 0;
for (; *str != 0; str++)
if (*str > '7' || *str < '0') //当有0~7以外的字符,返回假
return 0;
return 1;
}
判断ASCII码就行
比如:
char c;
scanf("%c",c);
if(c-48>=8)
printf("输入有误|");
学习,支持一下!加油:lol: 可以用getchar()方法,然后用if进行判断
页:
[1]