int * pn, char * pc, char c = 0x65;
pn = (int * ) & c; //(3)
int n = * pn; //(4)
- pn = 0x12345678; //(5)
语句(4)的执行结果,是使得n的值变为0x65吗?语句(5)编译会不
会出错?如果不出错,执行后会有什么结果?会不会有问题?
问题1:运行后n的值变成了0xcccccc65,为啥不是0x65;
问题2:语句(5)编译没有出错,执行后最后异常了,Stack around the variable 'c' was corrupted.
为啥?