我正在尝试创建一个链接列表,您可以在其中更新节点中的数据,但无论我尝试什么,C 似乎都不允许我更新 void 指针的值(或者更确切地说它指向的位置) . 这是我的测试代码:
void newData(void * d)
{
char data[] = "world";
d = &data;
}
int main()
{
char testData[] = "hello";
void * testPointer = &testData;
printf("TestData is %s\n", (char *)testPointer);
// Modify the data
newData(&testPointer);
printf("TestData is %s\n", (char *)testPointer);
}
仅输出::
TestData is hello
TestData is hello
我在这里遗漏了一些明显的东西吗?我也尝试过使用指向指针的指针,但无济于事。