如何在c/c++中获取指针的地址?
代码语言:javascript运行复制int a = 10;要获得a的地址,您需要这样做:&a (a的地址),它返回一个int* (指向int的指针)
代码语言:javascript运行复制int *p = &a;然后将a的地址存储在int*类型的p中。
最后,如果你做&p,你会得到p的地址,它的类型是int**,也就是指向&p的指针:
代码语言:javascript运行复制int** p_ptr = &p;刚刚看到你的编辑:
要打印出指针的地址,您需要将其转换为:
代码语言:javascript运行复制printf("address of pointer is: 0x%0X\n", (unsigned)&p);
printf("address of pointer to pointer is: 0x%0X\n", (unsigned)&p_ptr);或者,如果您的printf支持它,请使用%p
代码语言:javascript运行复制printf("address of pointer is: %p\n", p);
printf("address of pointer to pointer is: %p\n", p_ptr);