gpt4 book ai didi

c - 如何在 main 中返回指针到指针的指针?

转载 作者:行者123 更新时间:2023-11-30 18:44:23 25 4
gpt4 key购买 nike

void    ft_destroy(char ***factory);

int main()
{
char name[] = "sebastian";
char *pt1 = &name;
char **pt2 = &pt1;
char ***pt3 = &pt2;
printf("%s", ft_destroy(pt3));
return (0);
}
error: incompatible pointer types initializing 'char *' with an expression of type 'char (*)[10]'      [-Werror,-Wincompatible-pointer-types]        char *pt1 = &name;

最佳答案

name是一个由 10 char 组成的数组,这是 char [10] 。所以&name是指向 char 数组的指针,这是 char (*)[10] 。自 pt1char * ,您应该为其分配一个指向 char 的指针.

namechar 的数组, name[0]char ,和&name[0]是一个指向 char 的指针。所以你可以这样做char *pt1 = &name[0]; .

如果你只是使用name ,C 会自动将其转换为指向其第一个元素的指针,因此您也可以执行 char *ptr1 = name; .

关于c - 如何在 main 中返回指针到指针的指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58327748/

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