2011年4月20日 星期三

typedef 用法

>typedef int (*AAA)(int R, int G, int B);
>AAA pMyFunc;

這是函數指標型態的特殊定義, 也就是AAA所定義的型態為一個函數指標, 有3個int參數並傳回int值. 因此用"AAA pMyFunc;"定義後, pMyFunc便可以視為一個函數指標值, 其呼叫方法便是(*pMyFunc)(r,g,b)

>2. 以下宣告是不是表示, 符號 'AAA' 與 'BBB' 皆等於 'int'?
>typedef int AAA, BBB;

''AAA'' 與 ''BBB'' 皆等於 ''int"

>3. 以下宣告是否表示, 符號 '*AAA' 等於 'int'? 若是, 那符號 'AAA' (前面少了個星號) 又是什麼呢? 第二行的宣告又該怎麼解釋?
>typedef int *AAA;
>AAA mydata;

等同

typedef (int *) AAA;

也就是AAA是一個整數指標型態

沒有留言: