我正在寻找在C(任何标准)和C ++下编译的更多示例,但运行方式不同。作为一个例子,我在comp.lang.c中找到了它,它为C生成8,为C ++生成512:
#include <stdio.h>
struct A { char block[8]; };
int main(void) {
struct B {
struct A {
char block[512];
} a;
};
printf("sizeof(struct A) = %lu\n",
(unsigned long) sizeof(struct A));
return 0;
}
有没有人有更多这方面的例子,特别是没有使用这个特殊技巧的人?