主题:数据结构一书中的 malloc函数?? 蛋疼
typedef struct LNode
{
int data;//数据域
struct LNode *next;//指针域
} node;
………………
void GreatLink(node *head)//创建一个链表
{
int elem;
node *p,*q;
printf("请输入一系列整数,当输入0时,结束输入:");
p=head;
do
{
scanf("%d",&elem);
if(elem!=0)
{
[color=FF0000]q=malloc(sizeof(node));//就是这里???????[/color]
if(q!=NULL)
{
q->next=NULL;
q->data=elem;
p->next=q;//把结点q放在p之后
p=q;
}
}
}while(elem!=0);
}
上面有颜色的地方就搞不懂了!可以直接这样搞嘛?
难道就不需要一个类型转换吗?比如 q=(node)malloc(sizeof(node));或者……
{
int data;//数据域
struct LNode *next;//指针域
} node;
………………
void GreatLink(node *head)//创建一个链表
{
int elem;
node *p,*q;
printf("请输入一系列整数,当输入0时,结束输入:");
p=head;
do
{
scanf("%d",&elem);
if(elem!=0)
{
[color=FF0000]q=malloc(sizeof(node));//就是这里???????[/color]
if(q!=NULL)
{
q->next=NULL;
q->data=elem;
p->next=q;//把结点q放在p之后
p=q;
}
}
}while(elem!=0);
}
上面有颜色的地方就搞不懂了!可以直接这样搞嘛?
难道就不需要一个类型转换吗?比如 q=(node)malloc(sizeof(node));或者……