null啥意思

更新时间:2022-11-24 17:41:43 阅读: 评论:0


2022年11月24日发(作者:halloween什么意思)

#defineNULL0什么意思

2010-04-1508:37提问者:wyy孳孳linda|浏览次数:1372次

#include

#include

#defineNULL0

typedefstructnode

{

intdata;

structnode*next;

}linklist;

voidinput(linklist*L)/*输入函数*/

{

linklist*r,*p;

p=(linklist*)malloc(sizeof(node));

r=L;

printf("inputnums(-1toquit):");

scanf("%d",&p->data);

while(p->data!=-1)

{

r->next=p;

r=p;

p=(linklist*)malloc(sizeof(node));

scanf("%d",&p->data);

}

r->next=NULL;

}

voidmergelist(linklist*A,linklist*B,linklist*C)/*两单链表合并函数*/

{

linklist*p,*q,*r;

p=A->next;/*A的第一个节点*/

q=B->next;

r=A;

while(p&&q)

{

if(p->datadata)

{

r->next=p;

r=p;

p=p->next;

}

elif(p->data==q->data)

{

r->next=p;

r=p;

p=p->next;

q=q->next;

}

el

{

r->next=q;

r=q;

q=q->next;

}

}

if(p)

r->next=p;

if(q)

r->next=q;

}

voidoutput(linklist*L)/*输出函数*/

{

linklist*p;

p=L->next;

while(p)

{

printf("%2d",p->data);

p=p->next;

}

printf("n");

}

voidmain()

{

linklist*LA,*LB,*LC;

LA=(linklist*)malloc(sizeof(linklist));

LB=(linklist*)malloc(sizeof(linklist));

printf("对链表LA进行初始化!n");;

input(LA);

output(LA);

printf("对链表LB进行初始化!n");

input(LB);

output(LB);

LC=LA;

mergelist(LA,LB,LC);

printf("链表LA和LB合并后为:");

output(LC);

}

我来帮他解答

满意回答

2010-04-1510:30

#define是宏定义语句,后面加NULL0表示把NULL定义成0,

实际上,在编译器工作时候,第一步就是对原文件进行预处理,

首先把#include的文件展开,然后把文件中所有用#define定义的宏用其值替换,对于你这个

来说,就是在预处理的时候,把所有的NULL用0进行了替换

本文发布于:2022-11-24 17:41:43,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/13289.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:null啥意思
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图