gpt4 book ai didi

c - 无法返回链表中的节点时返回什么?

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

我这里有这个简单的 getNode() 函数。现在,假设用户在大于链表本身长度的索引处调用一个节点。我该如何处理这样的错误并返回一些东西?

NODE* getNode(NODE* start, int index)
{
int i;
for(i = 0; i < index; i++)
{
start = start -> next;
}
return start;
}

最佳答案

通常你返回NULL。一些库具有函数声明,例如:NODE *getNode(NODE *start, int index, int *status);,如果出现错误则设置状态代码。

你可以这样做:

NODE *getNode(NODE *start, int index, int *status)
{
// status of 1 means node not found
*status = 1;
// ...
return NULL;
}

// ...

int status = 0;
NODE *myNode = getNode(nodeList, 10, &status);

if (!myNode && 1 == status) {
printf("Not found!\n");
}

关于c - 无法返回链表中的节点时返回什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20229184/

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