这个和 i=x有什么区别吗?
追答如果x也是int型变量,那么可以认为二者等价!
如果x不是int型变量,比如是float型变量,那么语句int i=*(int *)&x;执行后,i的值会变得很神奇(可能会让你惊讶)
而语句int i=x;执行后,i的值是对x的值取整,举个例子,看以下代码:
#include <stdio.h>以上程序的结果,输出i的值应该是以1开头的很大的整数,而把语句int i=*(int *)&x;改成
int i=x;后,输出i的值为3
这个和 i=x有什么区别吗?
本回答被网友采纳