鱼C论坛

 找回密码
 立即注册
查看: 3749|回复: 5

c语言判断越界

[复制链接]
发表于 2013-9-21 10:11:41 | 显示全部楼层 |阅读模式
1鱼币
要求输入一串字符数字,其中字符串数为8进制数,要将其转换为10进制数输出!   其中如何对字符串中的字符数字做保护使其在>=8时候提示“输入有误!”!       8进制在0~7嘛。

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-9-21 11:09:16 | 显示全部楼层
用getchar()逐一读取 然后判断ASCII 呗
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-9-21 11:12:38 | 显示全部楼层
本帖最后由 565123 于 2013-9-21 11:17 编辑
  1. int isValid(char *str)
  2. {
  3.         if (*str == 0) //如果是空字符串,返回假
  4.                 return 0;
  5.         for (; *str != 0; str++)
  6.                 if (*str > '7' || *str < '0') //当有0~7以外的字符,返回假
  7.                         return 0;
  8.         return 1;
  9. }


复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-9-21 19:50:02 | 显示全部楼层
判断ASCII码就行
比如:
char c;
scanf("%c",c);
if(c-48>=8)
printf("输入有误|");
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-9-26 09:04:45 | 显示全部楼层

学习,支持一下!加油:lol:
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-10-1 12:02:11 | 显示全部楼层
可以用getchar()方法,然后用if进行判断
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-12 14:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表