C语言代码注释,单链表,帮个忙

img
刚刚开始,学习一年
单链表的代码,C语言的,
来个哥
帮我写个注释
要详细一点的
谢谢各位帮忙
给大家磕个头


//在链表中寻找结点值为data的结点
size_t ListFind(Node** pHead, DataType data)
{
    if (*pHead == NULL) //如果头指针为空,则为空指针,直接返回-1
    {
        return -1;
    }

    Node* pFind = *pHead; //将头指针赋值给pFind
    while (pFind && pFind->_data != data) //如果pFind指针不为空,并且pFind指针的data值不等于想要寻找的值
        pFind = pFind->_pNext; //将将pFind指针指向下一个
    if (pFind != NULL)//如果pFind指针不为空,说明找到了
    {
        printf("找到了数据%d\n", pFind->_data);//输出指针的data
        return 1; //1表示成功
    }
    else
        printf("没有找到数据%d\n", data); //如果pFind指针为空,说明没有找到

    return -1; //-1都表示失败
}

这个简单啊,就是在链表中搜索指定值,返回值为1表示找到,-1表示没找到
pHead为链表头指针,data为搜索的值
assert是断言语句,检查pHead是否为空,为空则中断报错。pHead为链表头指针的指针
第一个if检查头指针是否为空,为空则报错,返回-1
while循环遍历链表所有节点,判断节点的数值是否等于搜索的数值,如果相同,则输出找到了,返回1
如果搜索完链表所有节点都没有找到,则返回-1,输出没找到