C语言 在不知道用户输入的是字母还是数字的情况下 用int 还是char呢?
1个回答
展开全部
我想在这里决定输入数据类型,会需要考虑两个问题:
1、输入的数据是一个字符?还是会有多个字符?
2、输入的数据在程序里是起什么作用的?
在需要接受用户不确定输入类型的前提下,
如果只需要输入一个字符或者一个数字,使用int类型比较简单,不容易发生错误,使用单个字符变量,输入缓冲区里的字符有时候会对输入产生影响。但此时获取到的是字符内码,作为字符应用时需要按内码处理。而且在程序内,仅仅根据获取到的数据,很难区分获取到的是以一个两位以上的数值还是一个字符内码。
如果输入的是多个字符或者是两位以上的数字,那么使用字符数组的比较方便,不容易出错。但对于需要进行计算的数值要利用系统函数进行字符到数值的转换。当然这时输入的数据仅仅是一位数字或一个字符,也是完全能够正确的获取和判断区分的。
所以综合考虑,我自己觉得还是应用字符数组接受输入信息比较可靠和灵活。
1、输入的数据是一个字符?还是会有多个字符?
2、输入的数据在程序里是起什么作用的?
在需要接受用户不确定输入类型的前提下,
如果只需要输入一个字符或者一个数字,使用int类型比较简单,不容易发生错误,使用单个字符变量,输入缓冲区里的字符有时候会对输入产生影响。但此时获取到的是字符内码,作为字符应用时需要按内码处理。而且在程序内,仅仅根据获取到的数据,很难区分获取到的是以一个两位以上的数值还是一个字符内码。
如果输入的是多个字符或者是两位以上的数字,那么使用字符数组的比较方便,不容易出错。但对于需要进行计算的数值要利用系统函数进行字符到数值的转换。当然这时输入的数据仅仅是一位数字或一个字符,也是完全能够正确的获取和判断区分的。
所以综合考虑,我自己觉得还是应用字符数组接受输入信息比较可靠和灵活。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询