本文首先介绍C++中sizeof运算符的具体用法,再利用sizeof计算数组长度。
文章目录
sizeof 运算符
sizeof()
用于计算C++中数据类型的字节大小,具体应用如下:
#include<iostream>
using namespace std;
int main() {
string str = "ab";
int num = 100;
cout << sizeof(string) << endl; //输出:28
cout << sizeof(str) << endl; //输出:28
cout << sizeof(int) << endl; //输出:4
cout << sizeof(num) << endl; //输出:4
cout << sizeof(double) << endl; //输出:8
cout << sizeof(char) << endl; //输出:1
system("pause");
return 0;
}
由于数据类型所占字节大小与个人的电脑有关(本人电脑为64位),所以输出结果可能会不同。
计算数组长度
C++中数组长度没有可以直接用的内置函数进行计算,我们可利用sizeof()
,设数组为array[]
:
- 计算整个数组所占内存的字节大小
sizeof(array)
; - 计算数值中某个元素所占内存的字节大小
sizeof(array[0])
; - 用
sizeof(array)/sizeof(array[0])
可得到数组长度。
具体应用如下:
#include<iostream>
using namespace std;
int main() {
int a[3];
cout << sizeof(a) << endl; //输出:12
cout << sizeof(a[0]) << endl; //输出:4
cout << sizeof(a) / sizeof(a[0]) << endl; //输出:3(数组长度)
system("pause");
return 0;
}