C言語入門:関数ポインタ

ここでは、ポインタに関して理解するために、関数ポインタを扱ってみたいと思います。

サンプル


#include <stdio.h>

void
func()
{
  printf("function\n");
}

int
main()
{
 void (*ptr)();

 ptr = &func;

 (*ptr)();

 return 0;
}

上記例を実行すると「function」という文字列が表示されます。

上記サンプルプログラムでは、関数ポインタとして「ptr」を宣言しています。 その関数ポインタに「func」という関数へのポインタを代入しています。 そして「*ptr」を利用して「ptr」が指す先、func()を実行しています。

最後に

最初のうちは関数へのポインタを使って何をするのか、想像がつきにくいと思いますが、変数だけではなく関数もポインタとして扱えるということをとりあえず覚えていただければと思います。

次:関数へのポインタ渡しと値渡し

- C言語入門 記事一覧

おまけ

IPv6基礎検定

YouTubeチャンネルやってます!