選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C sizeof 運算子


獲取記憶體大小

我們在資料型別章節中介紹過,變數的記憶體大小因型別而異

資料型別 大小
int 2 或 4 位元組
float 4 位元組
double 8 位元組
char 1 位元組

記憶體大小指的是一個型別在計算機記憶體中佔用的空間大小。

要實際獲取資料型別或變數的大小(以位元組為單位),請使用 sizeof 運算子

示例

int myInt;
float myFloat;
double myDouble;
char myChar;

printf("%lu\n", sizeof(myInt));
printf("%lu\n", sizeof(myFloat));
printf("%lu\n", sizeof(myDouble));
printf("%lu\n", sizeof(myChar));
自己動手試一試 »

請注意,我們使用 %lu 格式說明符來列印結果,而不是 %d。這是因為編譯器期望 sizeof 運算子返回一個 long unsigned int (%lu),而不是 int (%d)。在某些計算機上它可能適用於 %d,但使用 %lu 更安全。

為什麼我應該知道資料型別的大小?

瞭解不同資料型別的大小很重要,因為它與記憶體使用和效能有關。

例如,char 型別的大小是 1 位元組。這意味著如果您有一個包含 1000 個 char 值的陣列,它將佔用 1000 位元組 (1 KB) 的記憶體。

針對正確的目的使用正確的資料型別將節省記憶體提高程式的效能

您將在本教程的後續部分了解更多關於 sizeof 運算子的知識,以及如何在不同場景中使用它。


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援