ProgrammingのTipなど

関数ポインタ


C言語・C++言語では関数もポインタ変数に入れることができ、またそれを関数として使うこともできます
これにより関数自体をオブジェクトのように受け渡しすることが可能になります
ただし関数ポインタは戻り値の型と引数の個数と型が一致した関数しか格納できません
なので普通のポインタ変数の宣言とは少し違った形になります

関数ポインタの宣言
戻り値の型 (*関数ポインタ変数) (引数の型1 引数, 引数の型2 引数, ・・)


int (*ptf) (int x);


#include <stdio.h>
#include <stdlib.h>

int add2(int x, int y)
{
    return x + y;
}

int main (void) {
  int (*ptf) (int a, int b);
  ptf = add2;
  int ans = ptf(5900,20000);
  printf("%d\n",ans);

  return 0;
}

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

メニュー2

開くメニュー

閉じるメニュー

  • アイテム
  • アイテム
  • アイテム
【メニュー編集】

管理人/副管理人のみ編集できます