typedef用法

用于取别名

typedef 原名 新名

1⃣️给基本类型取别名

typedef int ElemType
以后可定义整型变量:ElemType a=0;

在c语言中:
2⃣️给结构体取别名

typedef struct Node *PtrToNode;
struct Node {
    ElementType Data; /* 存储结点数据 */
    PtrToNode   Next; /* 指向下一个结点的指针 */
};
typedef PtrToNode List; /* 定义单链表类型 */

或者在声明时取别名

typedef struct Node {
    ElementType Data; /* 存储结点数据 */
    PtrToNode   Next; /* 指向下一个结点的指针 */
}*PtrToNode;
typedef PtrToNode List; /* 定义单链表类型 */

理解:将struct Node*取了别名:PtrToNode,以后定义变量直接:
List L;L是Node类型的指针。

如果没有加typdef,

struct Node {
    ElementType Data; /* 存储结点数据 */
    PtrToNode   Next; /* 指向下一个结点的指针 */
}*PtrToNode;
typedef struct PtrToNode List;  /*此处必须要加struct*/

然后这样定义List L,struct List L都是错的!!!

总之:c语言最好再前面加一个typedef,这样变量可以直接定义

你可能感兴趣的:(c/c++语法)