好吧,我整天都在忙这个(不是硬件),虽然它可能不是特别有用的代码,但它是一个简洁的概念性东西。我试图找出在末尾设置值的最佳方法,因为没有更好的名称,指向指针链的指针。例如,我声明:
int *****ptr;
将每个指针设置为指针段的最佳方法是什么,一直到实际的 int 值?
此代码无法编译,因为它不喜欢我使用和取消引用 void 指针的方式:
#include <stdio.h>
#include <stdlib.h>
#define NUMPOINTERS 5
int main(int argc, char **argv)
{
int *****number;
*****number = malloc(sizeof(void*));
void *ptr = *number;
int i;
for(i = 1; i < NUMPOINTERS; i++)
{
if(i == NUMPOINTERS - 1)
{
ptr = malloc(sizeof(int));
int *iPtr = (int*)ptr;
*iPtr = 900;
break;
}
*ptr = malloc(sizeof(void*));
ptr = **ptr;
}
printf("%d", *****number);
return 0;
}
是否有一些文章讨论了指向指针的荒谬数量以及如何使用它们?