找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4329|回復(fù): 8
收起左側(cè)

聯(lián)合體名,結(jié)構(gòu)體名,可以寫在體尾,也可以寫在關(guān)鍵字后 對(duì)嗎?

[復(fù)制鏈接]
ID:140343 發(fā)表于 2016-10-20 18:43 | 顯示全部樓層 |閱讀模式
回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2016-10-20 18:43 | 顯示全部樓層
不是的。
寫在union或struct后面的是聯(lián)合體或結(jié)構(gòu)體(類型)名稱。
而寫在末尾的是用類型定義的變量名,這樣就沒有定義類型名。
回復(fù)

使用道具 舉報(bào)

ID:140343 發(fā)表于 2016-10-20 18:44 | 顯示全部樓層
哦,寫在后面,就可以直接定義聯(lián)合體或結(jié)構(gòu)體的變量了。對(duì)吧,寫在前面,只能是一種數(shù)據(jù)類型耍已,并非實(shí)際變量。這樣理解對(duì)吧
回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2016-10-20 18:44 | 顯示全部樓層
還有一種常見的寫法
typedef struct
{
   ....
} abc;
意思是給結(jié)構(gòu)體類型起個(gè)別名叫abc,后面就可以直接用abc來定義變量,而不需要寫
struct   結(jié)構(gòu)體名稱   變量名列表;
回復(fù)

使用道具 舉報(bào)

ID:140343 發(fā)表于 2016-10-20 18:44 | 顯示全部樓層
這個(gè)abc與 struct等價(jià)吧,在定義新的變量名的時(shí)候,任意一個(gè),即可,對(duì)不?
暈,不對(duì)不對(duì),關(guān)鍵我看錯(cuò)了
typedef 這是一個(gè)宏定義的關(guān)鍵字,是吧
回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2016-10-20 18:44 | 顯示全部樓層
應(yīng)該是這樣
struct   abc
{
   ......
};
typedef   struct  abc       abc;

第一條語句中的abc是結(jié)構(gòu)體名稱,要用它定義變量要寫struct  abc  變量名;
第二句給struct  abc起了別名叫abc,以后直接可以用abc定義變量,
如   abc   變量名;
之前寫的是將兩條語句合為一條寫,這樣可以省略結(jié)構(gòu)體名稱不寫。
回復(fù)

使用道具 舉報(bào)

ID:140343 發(fā)表于 2016-10-20 18:45 | 顯示全部樓層

#define struct
{
   ....
} abc 可不可以用這個(gè)關(guān)鍵字?
回復(fù)

使用道具 舉報(bào)

ID:140343 發(fā)表于 2016-10-20 18:45 | 顯示全部樓層
typedef struct
{
   ....
} abc;

struct abc
{
   ....
}下面等價(jià)吧,對(duì)嗎?一樣的,
此時(shí)的,abc,都是表示為結(jié)構(gòu)體的數(shù)據(jù)類型名
回復(fù)

使用道具 舉報(bào)

ID:140343 發(fā)表于 2016-10-20 18:47 | 顯示全部樓層
反復(fù)再把你剛才給我講的琢磨了一次,基本消化,謝謝你
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表