當前位置:成語大全網 - 書法字典 - C語言的基本類型是如何存儲在內存中的?

C語言的基本類型是如何存儲在內存中的?

1.整數數據:所有的整數(加或減零)都以補碼的形式存在於內存中。對於壹個正整數,它的補碼就是它的原碼本身。對於壹個負整數,它的補碼是原碼的反加1。

2.字符數據:將字符對應的ASCII碼(整數,映射關系見ASCII碼表)放入存儲碼單元,這些ASCII碼值也以二進制補碼的形式存儲在計算機中。

3.實數:又稱浮點數,在計算機中也是以二進制形式存儲的。關鍵在於如何將十進制分數轉換成二進制來表示。

擴展數據

使用C語言存儲數據的註意事項

C語言(包括C++/Java)中浮點數的實際存儲並不是直接存儲“整數二進制+十進制二進制”來完成的,這只是第壹步。二進制轉換後,需要進行處理。實際的存儲標準是IEEE754。

遇到壹個“未全乘”的浮點數,最終能得到多少位,取決於編譯器對應的浮點數據的分配字節。字節越多,越準確。所以double比float更準確不僅是因為整數部分的上限更高,而且小數部分可以得到更低的位數,所以更準確。

盡量避免大浮點數和小浮點數運算。由於浮點數存儲的特點,小浮點數經常丟失,需要判斷兩個浮點數或壹個浮點數是否等於整數和常數。ABS (x-y)

百度百科-整數數據

百度百科-人物數據

百度百科-浮點數