在定义结构体时,结构体里含有该结构体类型的变量,struct student{char name[20];float score;struct student *next;};typedef struct DNode{ElemType data; //ElemType是之前已经定义的typedef char ElemType;struct LNode *next;}LinkLi
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/09 19:03:22
![在定义结构体时,结构体里含有该结构体类型的变量,struct student{char name[20];float score;struct student *next;};typedef struct DNode{ElemType data; //ElemType是之前已经定义的typedef char ElemType;struct LNode *next;}LinkLi](/uploads/image/z/9890540-44-0.jpg?t=%E5%9C%A8%E5%AE%9A%E4%B9%89%E7%BB%93%E6%9E%84%E4%BD%93%E6%97%B6%2C%E7%BB%93%E6%9E%84%E4%BD%93%E9%87%8C%E5%90%AB%E6%9C%89%E8%AF%A5%E7%BB%93%E6%9E%84%E4%BD%93%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%8F%98%E9%87%8F%2Cstruct+student%7Bchar+name%5B20%5D%3Bfloat+score%3Bstruct+student+%2Anext%3B%7D%3Btypedef+struct+DNode%7BElemType+data%3B+%2F%2FElemType%E6%98%AF%E4%B9%8B%E5%89%8D%E5%B7%B2%E7%BB%8F%E5%AE%9A%E4%B9%89%E7%9A%84typedef+char+ElemType%3Bstruct+LNode+%2Anext%3B%7DLinkLi)
在定义结构体时,结构体里含有该结构体类型的变量,struct student{char name[20];float score;struct student *next;};typedef struct DNode{ElemType data; //ElemType是之前已经定义的typedef char ElemType;struct LNode *next;}LinkLi
在定义结构体时,结构体里含有该结构体类型的变量,
struct student
{
char name[20];
float score;
struct student *next;
};
typedef struct DNode
{
ElemType data; //ElemType是之前已经定义的typedef char ElemType;
struct LNode *next;
}LinkList;
像上面两个例子,其实这都是在定义链表,但是有typedef和没有又有什么不同呢?
在定义结构体时,结构体里含有该结构体类型的变量,struct student{char name[20];float score;struct student *next;};typedef struct DNode{ElemType data; //ElemType是之前已经定义的typedef char ElemType;struct LNode *next;}LinkLi
有typedef那个,就是为struct DNode定义了一个新类型名字叫LinkList.之后,
struct DNode node;
和
LinkList node;
就等价了.
而没有typedef那个,以后你要定义那个结构体的变量,还必须加struct关键字才行.
struct student mike;
省略关键字struct是不行的.