我的问题是:如果指针变量与其值具有相同的地址,它是否真的指向自身?
例如 - 在下面的代码中,是a一个指向自身的指针?
#include<stdio.h>
int main(){
int* a;
int b = (int)&a;
a = b;
printf("address of a = %d\n", &a);
printf(" value of a = %d\n", a);
}
Run Code Online (Sandbox Code Playgroud)
如果a不是指向自身的指针,则同样的问题再次出现:指针可以指向自身吗?
另外,自指向指针有用吗?
在objective-c中,我真的无法理解这一点:
void *x = &x;
我的理解是:
声明泛型指针(因此,类型为void*),指针变量名称为x,该指针指向一个变量的引用(即应被宣布already-但它不是)名为x.
对我来说很困惑!