我与声明有一个联合:
union test_u
{
int i;
char *str;
};
我正在尝试使用以下代码使用“第二个”字段中的数据初始化变量:
union test_u test = {"Sample"}; // char *, not int
在尝试编译它时,我收到错误:
file.c:72:11:警告:初始化从指针生成整数而不进行强制转换
是否可以以与上面相同的方式初始化变量?编译器(在 C89 下)不应该在初始化中接受一个int
to吗?char *