向共同体类型转换
Posted WFUF
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了向共同体类型转换相关的知识,希望对你有一定的参考价值。
向共同体类型转换和其它转换类似,除了指定的类型是一个共同体类型。你可以用union tag
或一个typedef
名字来指定类型。向共同体转换实际上却是一个构造,而不是一个转换,因此不像普通转换那样产生一个左值。(参考5.21节复合文字)
可以向共同体类型转换的类型是共同体中成员的类型。所以,给定下面的共同体和变量:
union foo { int i; double d; }; |
x和y都能够被转换成类型union foo
。
把这种转换作为给共同体变量赋值的右侧和在这个共同体的成员中存储是等价的:
union foo u; |
你也可以使用共同体转换作为函数参数。
void hack (union foo); |
以上是关于向共同体类型转换的主要内容,如果未能解决你的问题,请参考以下文章