我之前没有在C语言课程中看到过虚空**。
int *dev_c;
dev_c = &val;
printf("%p\n",dev_c); // val address
printf("%p\n",&dev_c); // get the address of dev_c
printf("%p\n",(void **)&dev_c);
(void **)类型转换器?最后两行输出相同的结果。
答案 0 :(得分:2)
(void**)
是演员。它正在转换&dev_c
地址(其指针指向int
的类型指针),使其成为指向void
指针的指针。
答案 1 :(得分:1)
它是指向void类型指针的指针。该行正在引用该类型的引用。
答案 2 :(得分:1)
void**
是指向指针的指针。在示例中,dev_c
是指针,因此&dev_c
的地址将是指向指针的指针,并且这被指向void**
。
答案 3 :(得分:0)
(void **)
是一个类型转换,表示指向指针的指针。
在printf的示例代码中,它什么也没做。