标签:
C++中sizeof是经常被问到的一个概念,比如,下面的几个关于sizeof的面试题反复出现在各大IT公司的技术面试当中,我们有必要完全理解并掌握。
注:在曾经面试大公司时,我的确被问到过这样的问题。
1 #include <stdio.h>
2
3 struct nullType { };
4
5 struct type1
6 {
7 type1() {}
8 ~type1() {}
9 int print() { printf("Alexia"); return 0; }
10 };
11
12 struct type2
13 {
14 type2() {}
15 virtual ~type2() {}
16 };
17
18 int main()
19 {
20 printf("sizeof(nullType) = %d\n", sizeof(nullType));
21 printf("sizeof(type1) = %d\n", sizeof(type1));
22 printf("sizeof(type2) = %d\n", sizeof(type2));
23
24 return 0;
25 }
注:摘自《剑指offer》
补充:
在C中,sizeof(‘a‘)=4而不是1,因为C语言中的字符常数是int型,因此sizeof(‘a‘)是sizeof(int),这是与C++不同的地方。
标签:
原文地址:http://www.cnblogs.com/xymqx/p/4452411.html