C语言中如何定义有符号整数

 我来答
avatian1
推荐于2017-09-09 · TA获得超过1万个赞
知道大有可为答主
回答量:6315
采纳率:0%
帮助的人:2662万
展开全部
C语言中定义有符号整型:signed int x; 由于signed 可以省略,所以 int x; 也是可以定义有符号整型变量x
C语言中,有符号数与无符号数主要是由于是高位是否代表符号(正、负数)来决定的。有符号数是最高位(二进制位)代表符号,1代表是负数,0代表是正数,不管是正数还是负数都是以补码的形式存储与使用的。
(1)正数的补码:与原码相同。 例如,+9的补码是00001001。
(2)负数的补码:符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。 例如,-7的补码:因为是负数,则符号位为“1”,整个为10000111;其余7位为-7的绝对值+7的原码0000111按位取反为1111000;再加1,所以-7的补码是11111001。
mrdone
2011-10-09 · TA获得超过1143个赞
知道小有建树答主
回答量:2346
采纳率:100%
帮助的人:539万
展开全部
只有无符号的需要显式定义,
如果没有unsigned 标识,就是有符号的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
efanabe
2011-10-09 · TA获得超过2008个赞
知道小有建树答主
回答量:708
采纳率:0%
帮助的人:1126万
展开全部
int i。i就是有符号整数。
除非你用unsigned前缀,都是有符号的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bingqiang1903
2011-10-09
知道答主
回答量:66
采纳率:0%
帮助的人:27.6万
展开全部
没加unsigned的int就是有符号的整数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zyf5658702
推荐于2017-09-01 · 超过24用户采纳过TA的回答
知道答主
回答量:147
采纳率:0%
帮助的人:71.8万
展开全部
1)正数的补码:与原码相同。 例如,+9的补码是00001001。
(2)负数的补码:符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。 例如,-7的补码:因为是负数,则符号位为“1”,整个为10000111;其余7位为-7的绝对值+7的原码0000111按位取反为1111000;再加1,所以-7的补码是11111001。
已知一个数的补码,求原码的操作分两种情况:
(1)如果补码的符号位为“0”,表示是一个正数,所以补码就是该数的原码。
(2)如果补码的符号位为“1”,表示是一个负数,求原码的操作可以是:符号位为1,其余各位取反,然后再整个数加1。 例如,已知一个补码为11111001,则原码是10000111(-7):因为符号位为“1”,表示是一个负数,所以该位不变,仍为“1”;其余7位1111001取反后为0000110;再加1,所以是10000111。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式