typedef struct與strcut的區別

2021-04-20 19:39:50 字數 472 閱讀 2994

在windows下用vc作為開發工具的程式設計師,常可以在標頭檔案中看到如下這樣的定義:

typedef struct tag*** ***;

按照字面的意思理解,上面的**段定義了乙個結構體tag***,同時還指明了***型別為strcut tag***。直接把定義改為下面這樣的**,不是更好嗎?

strcut *** ;

為什麼要多此一舉的用typedef來定義個同樣的型別呢?答案是:在c裡面,宣告結構體時必須要帶struct關鍵字,如下**段所示:

struct tag*** a;

struct tag*** b;

多帶個struct關鍵字,一兩次沒什麼,但如果有很多地方都需要宣告結構體變數,這就會變成麻煩事,而用typedef宣告了相同的型別後,就可以省去這個麻煩,再宣告結構體變數,只需要如下則可:

*** a;

*** b;

嗯,這樣看來,typedef確實可以帶來些方便。

typedef struct與struct的區別

1.基本解釋 typedef為c語言的關鍵字,作用是為一種資料型別定義乙個新名字。這裡的資料型別包括內部資料型別 int,char等 和自定義的資料型別 struct等 在程式設計中使用typedef目的一般有兩個,乙個是給變數乙個易記且意義明確的新名字,另乙個是簡化一些比較複雜的型別宣告。至於ty...

typedef struct與struct的區別

typedef struct與struct的區別 1.基本解釋 typedef為c語言的關鍵字,作用是為一種資料型別定義乙個新名字。這裡的資料型別包括內部資料型別 int,char等 和自定義的資料型別 struct等 在程式設計中使用typedef目的一般有兩個,乙個是給變數乙個易記且意義明確的新...

typedef struct與struct的區別

1.基本解釋 typedef為c語言的關鍵字,作用是為一種資料型別定義乙個新名字。這裡的資料型別包括內部資料型別 int,char等 和自定義的資料型別 struct等 在程式設計中使用typedef目的一般有兩個,乙個是給變數乙個易記且意義明確的新名字,另乙個是簡化一些比較複雜的型別宣告。至於ty...