c typedef

ddatsh

dev #c
typedef struct listNode {  
    struct listNode *prev; 
    struct listNode *next; 
    void *value;  
} listNode;

等同于以下两段分开的定义

定义结构体类型 struct listNode

struct listNode {
    struct listNode *prev;
    struct listNode *next;
    void *value;
};

为这个结构体类型定义一个别名 listNode

typedef struct listNode listNode;

使用这段代码定义的类型时,可以有两种方式:

使用 struct listNode

struct listNode node1;

使用 listNode(通过 typedef 简化了类型名称)

listNode node2;