考虑:
typedef union
{
int intval;
const int const_intval;
}myUnion_t;
int main(void)
{
myUnion_t x = {0};
x.intval = 5;
printf("intval = %d\n", x.intval);
printf("const_intval = %d\n", x.const_intval);
}
- UB 本身的定义是否
myUnion_t
与此处相同? - 有
intval
UB 的作业吗?
经过测试的所有编译器均未发出警告(使用 C++ 编译器编译时也如此)
编辑
重复仅与问题有关2
,与主要问题无关。