typedef struct node{
int data;
struct node *next;
}Node;
會這有什麼區別,如果我使用「節點」而不是「節點」我們可以使用typedef struct node node;
typedef struct node{
int data;
struct node *next;
}node;
typedef struct node{
int data;
struct node *next;
}Node;
會這有什麼區別,如果我使用「節點」而不是「節點」我們可以使用typedef struct node node;
typedef struct node{
int data;
struct node *next;
}node;
不,它只是一個名字。然而,大多數C命名約定規定typedef
結構是大寫,因此大多數更喜歡Node
。
好的,但是爲什麼我在'C'代碼中使用'C++'命名約定(#只是爲了好玩)。 :-) –
哎喲....我修正了這個問題。謝謝 :) –
結構,聯合和枚舉的標籤名稱與其他標識符(包括typedef名稱)佔用不同的名稱空間,因此typedef struct node { ... } node;
有效。
結構和工會成員的名字佔據的另一個命名空間,所以下面是合法的,如果是不明智的:
typedef struct foo { int foo; } foo;
什麼你不能做的是一樣的東西
typedef struct foo {...} foo;
foo foo;
因爲typedef名稱和變量名稱都佔用相同的名稱空間。
你試過了嗎?它(沒有)工作嗎? –
這只是一個名字。 –
它是有效的。我們可以使用它。 – BLUEPIXY