不能将Lnode * 类型的值分配到Lnode * 类型的实体
想创建一个链表#include"stdafx.h"#include"stdlib.h"typedefstruct{intdata;structLnode*next;}Ln...
想创建一个链表
#include "stdafx.h"
#include "stdlib.h"
typedef struct {
int data;
struct Lnode *next;
}Lnode,*LinkList;
void CreateList_L(LinkList &L,int n){
int i;
Lnode *p;
L=(LinkList)malloc(sizeof(Lnode));
L->next=NULL;
for(i=0;i>0;--i){
p=(LinkList)malloc(sizeof(Lnode));
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
}
L->next=p;这句总报错就是“不能将Lnode * 类型的值分配到Lnode * 类型的实体“
什么意思啊 展开
#include "stdafx.h"
#include "stdlib.h"
typedef struct {
int data;
struct Lnode *next;
}Lnode,*LinkList;
void CreateList_L(LinkList &L,int n){
int i;
Lnode *p;
L=(LinkList)malloc(sizeof(Lnode));
L->next=NULL;
for(i=0;i>0;--i){
p=(LinkList)malloc(sizeof(Lnode));
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
}
L->next=p;这句总报错就是“不能将Lnode * 类型的值分配到Lnode * 类型的实体“
什么意思啊 展开
展开全部
不能将LNode类型的值分配到LinkList类型的实体”
此问题原因为:您使用的编译器支持简介形式,因此要解决此问题应将结构体改为:
typedef struct tagLnode
{
int data;
struct tagLnode *next;
}Lnode,*LinkList;或者改成大多数编译器支持的简洁形式
typedef struct Lnode
{
int data;
Lnode *next;
}*LinkList;
扩展资料:
Lnode x; // 声明一个Lnode类型的变量x。结构体Node ,是一种类型。传值是L,传引用是&L,传指针是*L, 如果需要有原值的变更的话需要用传引用,或者传指针。
LNode *s;//定义一个指向LNode的指针。
LNode *s=H;//H是一个定义好的头节点,这里定义一个指向LNode 的指针s,并把它的初始值定为H的内存地址。
LinkList s;和LNode *s;不能在同一个函数中出现。
展开全部
typedef struct {
int data;
struct Lnode *next;
}Lnode,*LinkList;
这个地方有点问题,因为结构体定义中出现了struct Lnode但 Lnode这个名字却是在下一行出现的,于是把编译器弄懵了。改成这样:
typedef struct tagLnode
{
int data;
struct tagLnode *next;
}Lnode,*LinkList;
或者改成大多数编译器支持的简洁形式
typedef struct Lnode
{
int data;
Lnode *next;
}*LinkList;
int data;
struct Lnode *next;
}Lnode,*LinkList;
这个地方有点问题,因为结构体定义中出现了struct Lnode但 Lnode这个名字却是在下一行出现的,于是把编译器弄懵了。改成这样:
typedef struct tagLnode
{
int data;
struct tagLnode *next;
}Lnode,*LinkList;
或者改成大多数编译器支持的简洁形式
typedef struct Lnode
{
int data;
Lnode *next;
}*LinkList;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询