首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
有如下C语言程序段shortsi=-32767;unsign
[单选题]
有如下 C 语言程序段
short si = -32767;
unsigned short usi = si;
执行上述两条语句后,usi 的值为
-32767
32767
32768
32769
查看正确选项
添加笔记
求解答(12)
邀请回答
收藏(9)
分享
纠错
3个回答
添加回答
4
牛客133709158号
-32767的原码用二进制表示为 1111 1111 1111 1111 (
) ,用机器码表示 则为 1000 0000 0000 0001,将该值赋给无符号型short ,那么usi的机器码就是
1000 0000 0000 0001,最高位的1不再代表符号位,对应的数值就是
= 35768 + 1 =35769
发表于 2021-12-18 08:59:43
回复(0)
2
牛客526277285号
short为16位,C语言中的数据在内存中为补码表示形式,si对应的补码二进制形式表示为1000 0000 0000 0001B,最前面的一位“1”为符号位,表示负数,即-32767。由signed型转化为等长的unsigned型数据时,符号位成为数据的一部分,即负数转化为无符号树数(即正数)时,其数值将发生变化。usi对应的补码二进制表示与si的表示相同,但表示正数,为32769
发表于 2021-09-17 17:43:57
回复(0)
0
Augustalwayssafe
D
发表于 2023-02-22 20:11:06
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
2016
Java工程师
上传者:
小小
难度:
3条回答
9收藏
8377浏览
热门推荐
相关试题
软件测试是软件开发过程中的一个重要...
京东
2016
测试工程师
软件测试
评论
(5)
下列有关Beta测试的叙述中,正确...
京东
软件测试
2016
测试工程师
评论
(7)
约瑟夫环
过关题目
语言题
评论
(1)
测试ATM取款功能,已知取款数只能...
软件测试
评论
(0)
LoRA(Low-Rank Ada...
大模型开发
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题