读书人

*(int *)amp;a跟(int amp;)a啥区别

发布时间: 2012-09-11 10:49:03 作者: rapoo

*(int *)&a和(int &)a啥区别
前者是一个c语言例子上的,意思是a地址处内容按整形取出,这个明白,但是加上另一句就不行了,如下:
#include <stdio.h>
int main()
{
float a = 12.5;
printf("%d\n", (int)a);
printf("%d\n", *(int *)&a);
//printf("%d\n", (int &)a);//xxx//dereferencing type-punned pointer will break strict-aliasing rules
return 0;
}

//xxx处的句子是在一个c++程序里见的(http://blog.sina.com.cn/s/blog_96551047010122m9.html),但是换成c++也是同样错误啊!我怎么不记得c语言哪里见过(int &)?但c++貌似也不认啊?

[解决办法]
有后int &m吗

读书人网 >C语言

热点推荐