看板 C_and_CPP 關於我們 聯絡資訊
開發平台(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
PkmX:1. 宣告一個名子叫ttt1的結構然後生出一個實體test1 01/10 17:42
PkmX:2. 宣告一個沒有名子的結構然後生出一個實體test2 01/10 17:42
PkmX:3. 幫一個沒有名子的結構取外號叫做test3 01/10 17:42
PkmX:4. 幫一個叫ttt2的結構取外號叫做test4 01/10 17:43
MaxHaru:謝謝, 請問一下, 若使用typedef 宣告struct時,sturct的名 01/10 17:46
MaxHaru:稱是不是就不那麼重要了呢? 因為使用時是只用typedef別名. 01/10 17:48
Donze:只差在就少了原來的結構名字的宣告方式 01/10 21:46
PkmX:其實比較有爭議的是到底要不要typedef XD 01/11 00:02
MaxHaru:那typedef struct name{...}; 這種宣告方式的typedef有什 01/11 13:19
MaxHaru:麼函意呢? 01/11 13:20
linotwo:typedef A B; 是把 B 定義為 A 型態,兩者都是型態。 01/11 20:39
linotwo:typedef struct name{...}; 這行的 B 不存在, 01/11 20:41
linotwo:自然使得 typedef 的動作沒有意義。 01/11 20:41
MaxHaru:明白了, 謝謝.. 01/17 09:14