以下代码片段的行为是什么?

时间:2010-08-04 21:07:05

标签: c++ c pointers floating-point

如果我在C / C ++中意外编码,以下代码的行为和输出是什么,

float a = 12.5;
printf("%d\n", a);
printf("%d\n", *(int *)&a);

2 个答案:

答案 0 :(得分:7)

垃圾和垃圾。

如果您通过

执行以下操作,您将获得有意义的内容
 printf("%d\n", (int)a);

答案 1 :(得分:0)

未定义,因为ANSI定义的不是sizeof(int)和sizeof(float)之间的关系。

相关问题