我有一个返回联合类型的函数,调用者知道如何处理。有没有一种高效的一行代码方式返回联合类型?我现在所做的是:
typedef union { int i; char *s; double d; } FunnyResponse;
FunnyResponse myFunc () {
// Tedious:
FunnyResponse resp;
resp.d = 12.34;
return resp;
}
int main () {
printf ("It's this: %g\n", myFunc().d);
}
这段代码可以编译和运行,但如果可能的话,我想只有一个单独的 "return" 行。有什么建议吗?
union
吗?我并没有看到任何繁琐的地方。你需要给所有需要赋值的字段进行赋值,可以一行或者一百行来完成。 - Eugene Sh.