Menu
×
   ❮   
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运算符的信息,以及如何在不同的场景中使用它。


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.