[問題] struct宣告的問題

看板C_and_CPP作者 (懂得放手..才是王道)時間13年前 (2013/01/10 17:38), 編輯推噓0(0014)
留言14則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev C 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): struct ttt1{ char a; }test1; struct { unsigned char a; }test2; typedef struct{ unsigned char a; }test3; typedef struct ttt2{ unsigned char a; }test4; 請教一下, struct在宣告時我看過上面4種宣告方式, 這4種方式有什麼不同丫? 使用上又有什麼值得注意的呢? 此外, "struct"之後有無名稱又有什麼差別呢? 最近在學struct, 有點被搞亂了. 謝謝. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.210.106.78

01/10 17:42, , 1F
1. 宣告一個名子叫ttt1的結構然後生出一個實體test1
01/10 17:42, 1F

01/10 17:42, , 2F
2. 宣告一個沒有名子的結構然後生出一個實體test2
01/10 17:42, 2F

01/10 17:42, , 3F
3. 幫一個沒有名子的結構取外號叫做test3
01/10 17:42, 3F

01/10 17:43, , 4F
4. 幫一個叫ttt2的結構取外號叫做test4
01/10 17:43, 4F

01/10 17:46, , 5F
謝謝, 請問一下, 若使用typedef 宣告struct時,sturct的名
01/10 17:46, 5F

01/10 17:48, , 6F
稱是不是就不那麼重要了呢? 因為使用時是只用typedef別名.
01/10 17:48, 6F

01/10 21:46, , 7F
只差在就少了原來的結構名字的宣告方式
01/10 21:46, 7F

01/11 00:02, , 8F
其實比較有爭議的是到底要不要typedef XD
01/11 00:02, 8F

01/11 13:19, , 9F
那typedef struct name{...}; 這種宣告方式的typedef有什
01/11 13:19, 9F

01/11 13:20, , 10F
麼函意呢?
01/11 13:20, 10F

01/11 20:39, , 11F
typedef A B; 是把 B 定義為 A 型態,兩者都是型態。
01/11 20:39, 11F

01/11 20:41, , 12F
typedef struct name{...}; 這行的 B 不存在,
01/11 20:41, 12F

01/11 20:41, , 13F
自然使得 typedef 的動作沒有意義。
01/11 20:41, 13F

01/17 09:14, , 14F
明白了, 謝謝..
01/17 09:14, 14F
文章代碼(AID): #1Gxemf4K (C_and_CPP)