関数ポインタは、データではなくプログラム内の関数を指す特別なタイプのポインタです。関数ポインターを使用すると、実行時に呼び出す関数を動的に選択できます。これは、コールバック関数、動的関数呼び出し、関数テーブル駆動プログラミングなどの特定のプログラミング シナリオで役立ちます。以下に、関数ポインターの基本概念と使用法をいくつか示します。
1. 関数ポインタの宣言: 関数ポインタの宣言は関数宣言と似ていますが、関数名をポインタ名に置き換えて、(*ptr)
それがポインタであることを示すために使用する必要があります。例えば:
int (*functionPtr)(int, int);
この宣言は、functionPtr
2 つの整数引数を受け入れ、整数を返す関数へのポインターを表します。
2.代入と初期化: 関数ポインタは、関数を指すことで初期化または代入できます。例えば
int add(int a, int b) {
return a + b;
}
int (*functionPtr)(int, int) = add;
3.関数ポインタの呼び出し: 関数ポインタを使用すると、通常の関数を呼び出すのと同じように、関数ポインタが指す関数を呼び出すことができます。例えば:
int result = functionPtr(3, 4); // 调用add函数,result将等于7