C语言链表那一块,Node * 和 *list 分别是什么意思
typedefstructNode{intdata;structNode*next;}*LinkList;//这个*LinkList(Node*)malloc(sizeo...
typedef struct Node
{
int data;
struct Node *next;
}*LinkList; //这个*LinkList
(Node *)malloc(sizeof(Node)) //这个Node * 展开
{
int data;
struct Node *next;
}*LinkList; //这个*LinkList
(Node *)malloc(sizeof(Node)) //这个Node * 展开
展开全部
*LinkList那个 可以认为是
typedef struct Node * LinkList;
也就是 这个*是前面那个Node的 即 LinkList 等效于Node *
malloc前面的是一个强制转换 把返回值转换成Node *的类型
一般的 可以这样写
LinkList h = (Node *)malloc(sizeof(Node));
也可以
LinkList h = (LinkList)malloc(sizeof(Node));
它们是等效的
typedef struct Node * LinkList;
也就是 这个*是前面那个Node的 即 LinkList 等效于Node *
malloc前面的是一个强制转换 把返回值转换成Node *的类型
一般的 可以这样写
LinkList h = (Node *)malloc(sizeof(Node));
也可以
LinkList h = (LinkList)malloc(sizeof(Node));
它们是等效的
更多追问追答
追问
问题上的代码少了东西,应该是这样的
typedef struct Node
{
int data;
struct Node *next;
}Node,*LinkList;
是Node * 等价于 LinkList 还是 Node 等价于 * LinkList
谢谢了!
追答
这个没区别的
LinkList是Node*
那么*LinkList就是Node了啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询