当前位置:首页 » 编程语言 » C语言零开头

C语言零开头

发布时间: 2025-06-16 18:12:47

⑴ C语言无符号数为什么取值范围0开头

首先这里是无符号和有符号之间的区别,
在这里我们将他们实现为二进制后,
楼主你会更好的理解他们之间的区别,
而且这部分的题目是面试题常考的
int
a
=
-400;
在这里a被定义成了一个有符号的整数,
且值为-400;
在计算机中的二进制为
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1110
0111
0000
有符号的解释出来的值为-400,
但是无符号解释出来的值却不同
而printf(“a=%u\n”,a);
很明显这里是要将a按无符号的形式输出(%u)
所以要将a按无符号的形式解释
即将
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1111
1110
0111
0000
解释成无符号的形式
就a值就变成了4294966896
书上解释说使用%u格式控制字符串输出正整数时该数不发生变化,输出负整数时该负整数将被转换为无符号整数输出。
现在这句话的意思已经很明显,
就在计算机中一个数字最终是以二进制存在,
不会改变
但是,
我们可以用有符号或者是无符号的形式去解释他
PS:若有不明白的地方,
可以追问
楼主,
具体方面的原理可以看<<深入理解计算机系统>>中第2章方面的知识,
不需要前缀知识,
直接看就行了。

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:593
制作脚本网站 发布:2025-10-20 08:17:34 浏览:888
python中的init方法 发布:2025-10-20 08:17:33 浏览:582
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:765
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:684
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1013
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:255
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:114
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:806
python股票数据获取 发布:2025-10-20 07:39:44 浏览:713