int main()
{
int a;
void *p;
p = &a;
printf("%ld\n",(long)p);
p = p+1;
printf("%ld\n",(long)p);
}
在这个程序中,p+1
只是将 p 的值增加 1。我知道void pointer arithmetic
在 中是不可能的C
,所以GCC
隐式地这样做。如果是,那么它是否将其视为char pointer
. 此外,如果 void 指针隐式进行指针运算,为什么dereferencing
它不可能。