问题在标题中给出: 我不知道为什么会发生这种情况。 有人可以告诉我这些技巧是如何工作的。一个地址如何可以存储多个值?
这里是我的代码:
#include<stdio.h>
int main(){
int a = 320;
char *ptr;
printf("%p\n",&a);
ptr =(char *)&a;
printf("%p\n",ptr);
printf("%d\n",a);
printf("%d\n",*ptr);
return 0;
}
输出:
0x7fffc068708c
0x7fffc068708c
320
64
检查这个问题。有一个很好的解释http://stackoverflow.com/questions/10262217/dynamic-memory-allocation-in-c-issues – abhi 2013-05-02 07:07:25