下面的 SLL 声明有什么区别
What is the difference in the following SLL declaration
场景 1:
/*Structure declares a node for Singly Linked List*/
typedef struct SLL
{
int data;
struct SLL *next;
}
场景 2:
struct SLL
{
int data;
struct SLL *next;
}node;
C 中 SLL 的首选声明是什么?
第一个在当前形式下毫无意义。
我想第一个应该是这样的:
typedef struct SLL
{
int data;
struct SLL *next;
} SLL;
以便它定义类型 SSL
为 struct SLL
。之后你可以像这样声明变量:
SLL node;
node.data = 42;
第二个例子做的事情完全不同。它使一个变量node
。所以之后你可以直接做:
node.data = 42;
Which is the preferred delcaration for SLL in C?
嗯,它们完全不同,做的事情也完全不同,所以无法比较。
然而,第一种方法是您通常会看到的,即类型定义。
场景 1:
/*Structure declares a node for Singly Linked List*/
typedef struct SLL
{
int data;
struct SLL *next;
}
场景 2:
struct SLL
{
int data;
struct SLL *next;
}node;
C 中 SLL 的首选声明是什么?
第一个在当前形式下毫无意义。
我想第一个应该是这样的:
typedef struct SLL
{
int data;
struct SLL *next;
} SLL;
以便它定义类型 SSL
为 struct SLL
。之后你可以像这样声明变量:
SLL node;
node.data = 42;
第二个例子做的事情完全不同。它使一个变量node
。所以之后你可以直接做:
node.data = 42;
Which is the preferred delcaration for SLL in C?
嗯,它们完全不同,做的事情也完全不同,所以无法比较。
然而,第一种方法是您通常会看到的,即类型定义。