問題描述在C Primer Plus這本書中產生幾個疑問,原文內容大概如下:字節是計算機常用的存儲單位,對于所有的機器,1字節均為8位,這是字節標準定義,至少在衡量存儲單位是這樣的(但是,C 語言對此不同的定義)一般而言 C 語言會保證 char類型足夠大,以儲存系統(實現C語言的系統)的基本字符集.我的疑問是char 在C中一定是8位? char 與 byte 什么關系?期待的結果是給出結論同時給出參考內容,以及思考過程,這比結論更有價值.
1 回答
波斯汪
TA貢獻1811條經驗 獲得超4個贊
標準規定char最少8位
而且一般就是8位,POSIX也要求char必須是8位
你當然可以實現一個c編譯器,將char實現為16位或更多,但是相應的其他整數類型也要調整,而且這樣一來與POSIX標準也不再兼容
所以一般沒人這么干
所以一般把char當成8位來用不會有什么問題,特殊情況下為了保險起見可以檢查
CHAR_BIT
- 1 回答
- 0 關注
- 6224 瀏覽
添加回答
舉報
0/150
提交
取消
