//图书单链表的初始化—构造空的单链表
Status InitList_L(LinkList &L)
{
//生成新节点作为头节点,用头指针L指向头节点
L = new LNode;
//头节点的指针域置空
L -> next = NULL;
return OK
}
//尾插法将新节点逐个插入单链表头部
int input_L(Linklist &L)
{
//初始化p指向链表头节点
Linklist p = L;
char isbn[20];
char name[50];
float price;
while(cin>>isbn>>name>>price)
{
if(strcmp(isbn,"0")==0 && strcmp(name,"0")==0 && strcmp(price,"0")==0) //输入“0 0 0”
{
break;
}
else{
//尾插法创建链表
//生成新节点*q
Linklist q = new LNode;
//对节点*q数据域各部分赋值
strcpy(q->data.isbn,isbn);
strcpy(q->data.name,name);
q->data.price=price;
//尾指针置为空
q->next=NULL;
//将新结点*q插入尾结点*p之后
p->next=q;
//更新p,将p指向新的尾结点*q
p=q;
}
}
return OK;
}
在给定的代码中,Status
和 int
是不同的数据类型,具有不同的含义。
Status:
Status 是一个自定义的数据类型,通常用于表示函数执行的状态。
在这里,Status 作为函数的返回类型,用于指示函数执行是否成功。例如,return OK; 表示函数执行成功。
int:
int 是整数类型,用于表示整数值。
在这里,int 作为函数的返回类型,用于表示函数返回的整数值。在第二个函数中,int 表示成功插入节点的数量或者其他整数值。
总体而言,Status 主要用于表示函数执行状态,而 int 用于表示具体的整数值。