关于结构体声名的问题
假设有个结构体是这么声名:typedef struct node{
.............
}listnode;
typedef listnode *linklist;
那么:
linklist m与listnode * m到底有什么不一样?
谢谢....
例如这个建键表的程序.
#include<stdio.h>
#include<malloc.h>
typedef char datatype;
typedef struct node
{
datatype data;
struct node * next;
}listnode;
typedef listnode * linklist;
listnode * p;
linklist createlist(void)
{
char ch;
linklist head;
listnode * p;
head=NULL;
ch=getchar();
while(ch!='\n')
{
p=(listnode *)malloc(sizeof(listnode));
p->data=ch;
p->next=NULL;
head=p;
ch=getchar();
}
return (head);
}
void main()
{
createlist();
}
那为什么我们在声名键表的头指针时都写成linklist head而不是写成listnode * head?
谢谢.
其实,这都是一样的.你可以去试一下就知道了.
[此贴子已经被作者于2007-9-14 19:35:24编辑过]