在C与C++中编译但执行方式不同的代码示例

Sea*_*ean 10 c c++

我正在寻找在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;
}
Run Code Online (Sandbox Code Playgroud)

有没有人有这方面的例子,特别是没有使用这个特殊技巧的人?