c ++ sizeof如何工作?

时间:2017-10-01 10:46:00

标签: c++ memory sizeof

我有以下代码:

#include <iostream>
using namespace std;
class A {
    int a;
    char* b;
};

class B {
    int a;
};

class C {
    char *b;
};

int main() {
    // your code goes here
    cout << "size of A:" << sizeof(A) << endl;
    cout << "size of B:" << sizeof(B) << endl;
    cout << "size of C:" << sizeof(C) << endl;
    return 0;
}

指向ideone的链接:https://ideone.com/OAQuMv

A的大小是16

B的大小为4

C的大小为8

为什么A的大小是16而不是12?

0 个答案:

没有答案