黑马程序员技术交流社区

标题: 关于字符型变量输出问题,请教各位。 [打印本页]

作者: CesC    时间: 2015-7-19 00:32
标题: 关于字符型变量输出问题,请教各位。
char a=97,b=128,c=228;
        printf("%c %c %c\n",a,b,c);

此时输出为:a \200 \344

因为97的ASCII值为'a' ,所以第一个数输出为a没错,而ASCII的10进制对应数只到127。所以128的输出变成了一个奇怪的\200,请问是怎么回事?而228比128大了100,输出的数却不止大了100,请问这有什么规律可循?

作者: CesC    时间: 2015-7-19 00:41
请教各位!!!
作者: lclofty    时间: 2015-7-19 07:14
因为后两个输出控制符与变量不匹配 就会出现错误 没有什么必然规律
作者: lychae    时间: 2015-7-19 08:44
不懂!!!!
作者: 午夜码农    时间: 2015-7-19 08:47
你定义的是char类型,给的是整数,计算机怎么可能知道怎么解析并执行这个结果?最后答案绝壁是未知的啊。
作者: 杨远鹏    时间: 2015-7-19 12:43
可能是系统随机分配的数据吧?你多运行几次看看,结果是不是唯一的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2