gpt4 book ai didi

c - 为什么以及何时应该在 C 中使用指针到指针而不是简单指针?

转载 作者:行者123 更新时间:2023-12-02 17:54:26 24 4
gpt4 key购买 nike

我理解指向指针的指针是如何工作的,但我不明白为什么使用指向指针的指针而不是简单指针,以及何时在C 编程(而不是 C++)中使用它们)。我读过很多有关它的帖子,但找不到满意的答案。我见过的所有示例都可以变成一级指针解决方案。有人可以举一个简单的例子,其中指向指针的指针是“强制的”(这不能用简单的指针来完成)?

最佳答案

一个简单的情况是您想要修改指针本身。例如,

void func(char **p)
{
*p = malloc(1024); / allocate 1024 bytes */
}

int main(void)
{
char *p = NULL;
func(&p);
/* Now, p points at memory block of 1024 bytes and do something with it */

return 0;
}

当然,可以通过其他方法来完成内存分配,例如从函数返回指针等。但这是指向指针的指针有用的一种方法。

关于c - 为什么以及何时应该在 C 中使用指针到指针而不是简单指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40337531/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com