大佬教程收集整理的这篇文章主要介绍了在使用scanf读取的char变量中添加两个数字,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
#include <stdio.h> int main(void) { char num1; char num2; printf("%s","Enter the first number: "); scanf("%d",&num1); printf("%s%d\n","the number entered is:",num1); printf("%s","Enter the second number: "); scanf("%d",&num2); printf("%s%d\n",num2); printf("%s%d\n","The first number entered was:",num1); /* This was done for tesTing */ printf("%s%d\n","The sum is:",num1+num2); return 0; }
奇怪的是,我们尝试做5 6并且我们期望得到11但是得到6,我添加了一行来查看第一个数字发生了什么,并且在读取第二个数字后它变为0.
我知道变量应该是一个int(实际上原始代码就是这样并且有效)但我的理解是char是一个小整数,所以我认为如果我们添加小数字就会“安全”使用.
代码在具有cc的Linux机器上和在具有cl的Windows机器上进行测试和编译.输出是一样的.在Windows机器上,程序在添加后抛出错误.
我想解释为什么这段代码没有像我预期的那样工作.先谢谢.
以上是大佬教程为你收集整理的在使用scanf读取的char变量中添加两个数字全部内容,希望文章能够帮你解决在使用scanf读取的char变量中添加两个数字所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。