A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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,请问这有什么规律可循?

5 个回复

正序浏览
可能是系统随机分配的数据吧?你多运行几次看看,结果是不是唯一的
回复 使用道具 举报
你定义的是char类型,给的是整数,计算机怎么可能知道怎么解析并执行这个结果?最后答案绝壁是未知的啊。
回复 使用道具 举报
不懂!!!!
回复 使用道具 举报
lclofty 来自手机 中级黑马 2015-7-19 07:14:04
藤椅
因为后两个输出控制符与变量不匹配 就会出现错误 没有什么必然规律
回复 使用道具 举报
请教各位!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马