當前位置:首頁 » 編程語言 » 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章方面的知識,
不需要前綴知識,
直接看就行了。

熱點內容
存儲臍帶間充質幹細胞 發布:2025-06-17 00:47:05 瀏覽:974
生命線安卓為什麼下載不了 發布:2025-06-17 00:47:00 瀏覽:119
百旺網路配置伺服器地址上海 發布:2025-06-17 00:45:21 瀏覽:116
linux免費主機 發布:2025-06-17 00:37:57 瀏覽:325
藏寶閣為什麼自己換伺服器 發布:2025-06-17 00:36:38 瀏覽:685
c語言for循環break 發布:2025-06-17 00:34:18 瀏覽:952
輕量級ftp伺服器 發布:2025-06-17 00:28:23 瀏覽:81
壓縮引伸計 發布:2025-06-17 00:26:23 瀏覽:685
c語言函數存儲類型 發布:2025-06-17 00:25:21 瀏覽:951
海康存儲伺服器添加監控 發布:2025-06-17 00:25:13 瀏覽:509