関数ポインタにおけるtypedefに関して
Posted: 2015年7月31日(金) 22:59
関数ポインタにおけるtypedefの使い方に関して質問させていただきます。
まず、下記コードは理解しています。 また下記のような構造体のtypedefの使い方も分かります。
しかし下記のような関数ポインタの場合はどうでしょう。。。
例えば、下記関数の関数ポインタを定義する場合、 このように関数ポインタを宣言できる。 しかしこれは冗長なのでtypedefする。
この場合、typedefされたPFUNCは、一体どの部分に対してtype defineされたということになるのでしょうか?
(関数ポインタを宣言した際の"型"というのは上記コードでいうと具体的にどの部分を指すことになるのでしょうか?)
まず、下記コードは理解しています。 また下記のような構造体のtypedefの使い方も分かります。
/* struct tagsDataStructureをS_DATA_STRUCTUREという新しい型として宣言できる*/
typedef struct tagsDataStructure {
int dataNumber;
int data;
} S_DATA_STRUCTURE;
例えば、下記関数の関数ポインタを定義する場合、 このように関数ポインタを宣言できる。 しかしこれは冗長なのでtypedefする。
typedef int (*PFUNC)(int, int); /* typedefすると */
PFUNC func_pointer; /* このように使用できる */
func_pointer = plus;
(関数ポインタを宣言した際の"型"というのは上記コードでいうと具体的にどの部分を指すことになるのでしょうか?)