首页 > 代码库 > 向共同体类型转换
向共同体类型转换
向共同体类型转换和其它转换类似,除了指定的类型是一个共同体类型。你可以用union tag
或一个typedef
名字来指定类型。向共同体转换实际上却是一个构造,而不是一个转换,因此不像普通转换那样产生一个左值。(参考5.21节复合文字)
可以向共同体类型转换的类型是共同体中成员的类型。所以,给定下面的共同体和变量:
union foo { int i; double d; }; |
x和y都能够被转换成类型union foo
。
把这种转换作为给共同体变量赋值的右侧和在这个共同体的成员中存储是等价的:
union foo u; |
你也可以使用共同体转换作为函数参数。
void hack (union foo); |
向共同体类型转换
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。