大一菜鸟关于指针的一个小困惑。
按照规定定义一个指针变量需要表明它指向单元的类型,如int double等。 例如 int a
&a 包含了变量a的纯地址和数据类型,但是&a 终究只是一串十六进制数字而已,这串数字已经把a交代清楚了。
那把地址也就是这串数字 直接交给 指针变量不是就好了,前面注明指向单元的类型是不是有点多此一举,
[此贴子已经被作者于2018-3-13 21:23编辑过]
#include <stdio.h> #include <stdlib.h> int main() { double x=12346.1700; void *p; double *p1; p= &x; p1 = &x; printf("&x = %0x\n",&x); printf("p = %0x\n",p); printf("p1 = %0x\n",p1); printf("*((double*)p) = %f\n",*((double*)p)); printf("*p1 = %f\n",*p1); return 0; }