#include<iostream>
using namespace std;
struct node {
int a;
char b;
};
int main ()
{
cout<<sizeof(node)<<endl;
system("pause");
return 0;
}
这段代码运行后 您认为应该输出几呢?
上课的时候老师突然提出了这样一个问题,当时我想都没想 直接回答了 5。
呵呵 答案当然是错的 现在来运行一下这个程序 发现这个程序的结果是8;
PS:感谢楼下两位朋友的提问 让问题变得更有意思了 内部原理究竟是怎样的呢?希望知道的朋友能够予以解答
我在这里仅给出一些测试现象
struct node
{
};
输出为1
struct node
{
char a;
};
输出为1
struct node
{
int a;
double b;
};
输出为16
struct node
{
char a;
char b;
char c;
char d;
char e;
}
输出为5