本节结合代码看看不同类型的变量在内存中是如何存储的。
vs中新建一个空白工程,添加一个cpp文件,然后添加如下代码:
1 #include <string> 2 #include <iostream> 3 int main() { 4 int i = 2; 5 double d = 1.2; 6 bool b = true; 7 std::string s1 = "hello"; 8 std::string s2 = "abc"; 9 std::cout << "end"<<std::endl; 10 }
然后运行调试下。
变量i对应的内存(内存里的内容是以十六进制显示的)
变量 d
变量b
变量s1
i 占用4个字节的大小,d是8个字节,b是1个字节,s1占用14个字节。
其中 int、double、bool类型的大小是固定的,不管存储什么值,string类型是不固定的,其大小随着存储的字符的数量变化