在 C 語言中,數據類型指的是用於聲明不一樣類型的變量或函數的一個普遍的系統。變量的類型決定了變量存儲佔用的空間,以及如何解釋存儲的位模式。windows
C 中的類型可分爲如下幾種:
數組類型和結構類型統稱爲聚合類型。函數的類型指的是函數返回值的類型。數組
注意,各類類型的存儲大小與系統位數有關,但目前通用的以64位系統爲主。ide
如下列出了32位系統與64位系統的存儲大小的差異(windows 相同):
爲了獲得某個類型或某個變量在特定平臺上的準確大小,您能夠使用 sizeof
運算符。表達式 sizeof(type)
獲得對象或類型的存儲字節大小。下面的實例演示了獲取 int 類型的大小:函數
#include <stdio.h> #include <limits.h> int main() { printf("int 存儲大小 : %lu \n", sizeof(int)); return 0; }
%lu
爲 32 位無符號整數,詳細說明查看 C 庫函數 - printf()。spa
當您在 Linux 上編譯並執行上面的程序時,它會產生下列結果:3d
int 存儲大小 : 4
下表列出了關於標準浮點類型的存儲大小、值範圍和精度的細節:code
頭文件 float.h
定義了宏,在程序中能夠使用這些值和其餘有關實數二進制表示的細節。下面的實例將輸出浮點類型佔用的存儲空間以及它的範圍值:對象
#include <stdio.h> #include <float.h> int main() { printf("float 存儲最大字節數 : %lu \n", sizeof(float)); printf("float 最小值: %E\n", FLT_MIN ); printf("float 最大值: %E\n", FLT_MAX ); printf("精度值: %d\n", FLT_DIG ); return 0; }
%E
爲以指數形式輸出單、雙精度實數,詳細說明查看 C 庫函數 - printf()。blog
當您在 Linux 上編譯並執行上面的程序時,它會產生下列結果:圖片
float 存儲最大字節數 : 4 float 最小值: 1.175494E-38 float 最大值: 3.402823E+38 精度值: 6
void 類型指定沒有可用的值。它一般用於如下三種狀況下: