为了账号安全,请及时绑定邮箱和手机立即绑定

18、程序片段:在TC20中, int i=65536; printf("%d\n",i);的输出结果是___

18、程序片段:在TC20中, int i=65536; printf("%d\n",i);的输出结果是___

C
包小龙虾 2018-08-18 15:39:50
18、程序片段:在TC20中, int i=65536; printf("%d\n",i);的输出结果是____ A) 65536 B) 0 C) 有语法错误,无输出结果 D) -1
查看完整描述

2 回答

已采纳
?
Glitterior

TA贡献27条经验 获得超8个赞

0,原因:65536的2进制1000...00(16个0),而int在tc20中为16位,舍弃高位1,结果为0

查看完整回答
反对 回复 2018-08-18
?
onemoo

TA贡献883条经验 获得超454个赞

TC2.0...这 IDE 可真够老的了,现在 C 二级还以这个为准出题的吗......


如果它的编译器也遵循 C 标准的话,那其实 C 标准没有具体规定这时的行为——这样左侧是有符号整型时——具体发生的行为是实现相关的。

那么如果 TC 在这种情况下选择进行“按位截断”,那结果就是 0。

查看完整回答
反对 回复 2018-08-18
  • 包小龙虾
    包小龙虾
    对啊,去年的二级C还要求用TC2.0做题呢,我懂了,谢谢大神
  • 2 回答
  • 0 关注
  • 2399 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信