Kye*_*nes 3 c typedef linked-list
我对typedef感到困惑,任何人都可以将其转录为正常的构图吗?结构?我真的不想处理typedef因为它让我感到困惑
struct stackNode
{
int data;
struct stackNode *nxtptr;
};
typedef struct stackNode StackNode;
typedef StackNode *StackNodePtr;
Run Code Online (Sandbox Code Playgroud)
是
typedef struct stackNode StackNode;是一样的struct stackNode StackNode
和typedef StackNode *StackNodePtr;是一样的 struck stackNode *StackNodePtr?
如果您不想使用typedef,可以始终使用完整类型名称:
代替:
StackNode sn;
Run Code Online (Sandbox Code Playgroud)
你会用:
struct stackNode sn;
Run Code Online (Sandbox Code Playgroud)
代替:
StackNodePtr snp;
Run Code Online (Sandbox Code Playgroud)
你会用:
struct stackNode *snp;
Run Code Online (Sandbox Code Playgroud)
声明完全一样.
编写相同内容的更常见方法是:
typedef struct stackNode
{
int data;
struct stackNode *nxtptr;
} StackNode_t;
Run Code Online (Sandbox Code Playgroud)
stackNode所谓的"struct tag" 在哪里,是StackNode_t该类型的实际名称.如果你声明这样的结构,程序的其余部分将不需要关注struct标记,你可以使用nxtptr,就像它是StackNode_t一样.