可能重复:
是否可以找到变量名,指针指向?
是否可以获得指针指向的数组名称?
例:
char name[20];
char *p=name
int door_no;
int *q= & door_no
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我们给出了数组的基地址,数组名称和指针q指向door_no但是如果,我必须知道数组指向的变量的名称呢?什么是变量名称指针q也指向?是否有可能我做了尝试,我得出结论不是不可能,但我仍然试图得到解决方案.你觉得怎么样?有没有办法让它成为可能?
简答:不.
答案很长:
在C中,变量名称在编译后不存在(所有内容都转换为内存位置或寄存器位置).
如果两个对象的生命周期不重叠,编译器可能会将多个变量分配给同一个内存/寄存器位置.因此,运行时变量名的概念没有意义(在C的上下文中)