【发布时间】:2011-03-07 21:07:07
【问题描述】:
void display_binary_float(unsigned int ui) {
union {
unsigned int ui;
float f;
} uif2;
uif2.ui = ui;
printf("binary: %08X float: %g\n", uif2.ui, uif2.f);
}
1) 什么是联合?由于某种原因,它没有手动输入。在 google 上找不到文档。
2) 为什么uif2 在函数联合的末尾?不应该是 union uif2 {} 之类的东西还是这是 C 的东西?
【问题讨论】:
-
您搜索了什么?我找到了一个很好的参考搜索“union c”。这是一个完全标准的 C 语言特性。
-
你的谷歌一定是坏了。我的也为您的搜索提供了一整页相关结果。
-
@Doug 您使用的是哪个搜索引擎?我建议找一个更好的!!
-
任何好的 C 参考都将处理联合;通常在同一节中处理
struct。 你指的是什么'maunual'? -
@Doug 在谷歌上搜索“c 编程联盟”会得到很多点击,但“C 语言联盟”会更好。几乎所有的 C 书籍、教程和“手册”都提到过联合。
uif2的位置与它是(匿名)结构而不是联合时的位置没有什么不同。