c-关于typedef关键字的使用


typedef int ElementType; 
struct SNode{
ElementType data;
struct SNode* next; 
};
typedef struct SNode SNode;
typedef struct SNode* LinkStack;
typedef struct SNode* Position;

typedef在这个堆栈的结构定义中扮演什么角色,或者关键字typedef用于什么

typedef struct SNode SNode;

用于允许将堆栈节点定义为:

SNode node;

而不是

struct SNode node;

标记(结构、联合和枚举(的名称空间和标识符(如typedef(是分开的。因此一次写入:

struct X { ... };
typedef int X;

一切都很好。上述typedef将struct SNode类型的别名添加到标识符命名空间中。

最新更新