我昨天在一个IRC频道遇到过这个,并且不明白为什么这是不好的行为:
#include <stdio.h> int main(void) { char x[sizeof(int)] = { '\0' }; int *y = (int *) x; printf("%d\n", *y); }
是否有任何数据丢失或任何损失?谁能给我任何文件来进一步解释它做错了什么?
c casting
c ×1
casting ×1