首页 文章资讯内容详情

使用 C++ 的 sizeof 运算符的结果

2026-06-02 1 花语

Sizeof运算符是C语言中最常用的运算符之一,用于计算我们通过它的任何数据结构或数据类型的大小。sizeof运算符返回无符号整数类型,该运算符可应用于原始数据类型和复合数据类型。我们可以直接对数据类型使用sizeof运算符并知道它占用的内存-

示例

#include <bits/stdc++.h> using namespace std; int main() { cout << sizeof(int) << "\n"; cout << sizeof(char) << "\n"; cout << sizeof(float) << "\n"; cout << sizeof(long) << "\n"; return 0; }输出结果4 1 4 8 8

通过使用此功能,我们可以知道该数据类型的任何变量占用的空间。输出还取决于编译器,因为16位编译器将为int提供与32位编译器不同的值。

我们也可以将此操作应用于表达式-

示例

#include <bits/stdc++.h> using namespace std; int main() { cout << sizeof(int) << "\n"; cout << sizeof(char) << "\n"; cout << sizeof(float) << "\n"; cout << sizeof(double) << "\n"; cout << sizeof(long) << "\n"; return 0; }输出结果4 4

如您所见,x之前的值是4,即使经过前缀操作,它也恰好保持不变。这都是因为操作符的大小,因为这个操作符是在编译时使用的,所以它不会改变我们应用的表达式的值。

运算符sizeof的必要性

sizeof运算符有多种用途。尽管如此,它主要用于确定复合数据类型的大小,如数组、结构、联合等。

示例

#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {1, 2, 3, 4, 5}; //给定的数组 int size = sizeof(arr) / sizeof(int); //计算数组的大小 cout << size << "\n"; //输出给定数组的大小 }输出结果5

这里首先计算整个数组的大小或计算它占用的内存。然后我们将该数字除以数据类型的大小;在这个程序中,它是int。

此运算符的第二个最重要的用例是分配动态内存,因此我们在分配空间时使用sizeof运算符。

示例

#include <bits/stdc++.h> using namespace std; int main() { int* ptr = (int*)malloc(10 * sizeof(int)); //这里我们分配了40字节的内存 //sizeof(int)是4,我们正在分配10个块 //即40个字节 }

结论

在本文中,我们将讨论sizeof运算符的使用及其工作原理。我们还编写了不同类型的用例以查看输出并进行讨论。我们在C++中实现了这个运算符的用例。我们可以用其他语言(例如C、Java、Python等)编写相同的程序。我们希望本文对您有所帮助。