gpt4 book ai didi

c - 指向c中结构的函数

转载 作者:太空宇宙 更新时间:2023-11-04 08:04:59 25 4
gpt4 key购买 nike

我正在分析一些代码,但似乎无法完全掌握其背后的一些工作原理。

struct dplist {
dplist_node_t * head;
};

struct dplist_node {
dplist_node_t * prev, * next;
element_t element;
};

dplist_t * dpl_create ()
{
dplist_t * list;
list = malloc(sizeof(struct dplist));
DPLIST_ERR_HANDLER(list==NULL,DPLIST_MEMORY_ERROR);
list->head = NULL;
return list;
}

来自头文件:

typedef int element_t;
typedef struct dplist dplist_t;
typedef struct dplist_node dplist_node_t;

在主函数中:

dplist_t * list = NULL;

int main(void)
{
list = dpl_create();
return 0;
}

我不确定如何查看声明为 dplist 结构指针的 dpl_create() 函数(我认为?)。为什么需要将函数声明为指向结构的指针才能正确执行函数内部编写的内容?

最佳答案

C 函数声明中的第一个元素,在函数名称之前,始终是它将返回的变量的类型。在您的情况下,该函数未声明为“指向结构的指针”,它只是声明它将返回指向结构的指针(“返回列表”)。您可以在代码中看到另一个带有 main 函数的示例,它将返回一个 INT(“返回 0”)。

关于c - 指向c中结构的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43453585/

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