C++中 #include<iostream.h> void main() { cout<<'x1'; }会输出什么?(输出25700)为什么会这样输出?
答案:4 悬赏:30 手机版
解决时间 2021-01-31 08:07
- 提问者网友:蔚蓝的太阳
- 2021-01-30 20:07
C++中 #include<iostream.h> void main() { cout<<'x1'; }会输出什么?(输出25700)为什么会这样输出?
最佳答案
- 五星知识达人网友:几近狂妄
- 2021-01-30 21:34
如果你想通过 cout << 'x1' 输出 字符串 ‘x1’ , 则问题出在这里,因为单引号是用在单个字符的输出中的,而 x1显然是两个字符(已经构成了一个字符串),如果要输出这个字符串,必须用双引号,即 cout << "x1" ;
但是如果你本意不是如此,就是相输出 'x1'所代表的东西,那么得另样解释了。单引号括起来的字符串,实际为16进制的int型整数常量。x对应的十六进制的ASCII码是0x78,1对应的十六进制的ASCII码是0x31,因此x1用单引号引起来所代表的实际上是十六进制的0x7831所对应的int型整数常量,即30769。
我的机子上运行的结果也是30769,至于为什么你的机子上是25700,我就不清楚了。。。
你可以试试输出 'x2' , 它显示的会是30770 , 依次类推。。。
但是如果你本意不是如此,就是相输出 'x1'所代表的东西,那么得另样解释了。单引号括起来的字符串,实际为16进制的int型整数常量。x对应的十六进制的ASCII码是0x78,1对应的十六进制的ASCII码是0x31,因此x1用单引号引起来所代表的实际上是十六进制的0x7831所对应的int型整数常量,即30769。
我的机子上运行的结果也是30769,至于为什么你的机子上是25700,我就不清楚了。。。
你可以试试输出 'x2' , 它显示的会是30770 , 依次类推。。。
全部回答
- 1楼网友:痴妹与他
- 2021-01-31 00:35
含有多个字符的字符串必须用英文状态下的双引号""
- 2楼网友:逃夭
- 2021-01-30 23:45
你上面定义的x1是什么数据类型哦
而且输出直接是cout<<x1;就好了
你那样的输出肯定错了
那是字符输出形式,在这里就要不得
- 3楼网友:何以畏孤独
- 2021-01-30 23:08
你好!
你上面定义的x1是什么数据类型哦
而且输出直接是cout<
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯