C语言图书链表添加节点函数详解:add_book() 函数实现

该函数用于向图书链表中添加新的图书节点,其参数包括指向头节点指针的指针、图书编号、图书名称和作者名字。

void add_book(Book **head, int id, char *name, char *author) 
{
    Book *new_book = (Book*)malloc(sizeof(Book));
    new_book->id = id;
    strcpy(new_book->name, name);
    strcpy(new_book->author, author);
    new_book->status = 0; // 初始状态为未借出
    new_book->next = *head;
    *head = new_book;
}

函数代码解释:

  1. 内存分配: Book *new_book = (Book*)malloc(sizeof(Book)); 使用 malloc() 函数动态分配一个新的 Book 节点,并将其地址赋给指针 new_book

  2. 成员变量赋值: 将传入的参数 idnameauthor 分别赋值给新节点的相应成员变量:new_book->id = id;strcpy(new_book->name, name);strcpy(new_book->author, author);

  3. 状态初始化: new_book->status = 0; 将新节点的 status 成员变量初始化为 0,表示该图书为未借出状态。

  4. 连接新节点: new_book->next = *head; 将新节点的 next 指针指向当前链表的头节点。

  5. 更新头节点: *head = new_book; 将头节点指针指向新节点,完成新节点的插入操作。

总结: 该函数通过内存分配、成员变量赋值、指针连接等操作,将新的图书节点成功插入到链表的头部,实现了向图书链表添加新节点的功能。

C语言图书链表添加节点函数详解:add_book() 函数实现

原文地址: https://www.cveoy.top/t/topic/mpSX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录