研究などでは普通使わないから、全然分からないです。 ということで、いままでに分かったことをメモしておきます。
#include <stdio.h>
int global;
int func1(void)
{
return 1;
}
int func2(void)
{
return 2;
}
int func3(void)
{
return 3;
}
int *func100(void)
{
global = 100;
return &global;
}
int main(void)
{
int i, k;
int *j;
int (*f[3])(void); /* f is array of pointer to function returning int */
int (*g)(void); /* f is pointer to function returning int */
f[0] = func1;
f[1] = func2;
f[2] = func3;
g = func1;
for(i=0 ; i<3 ; i++){
printf("%d\n", (*f[i])());
printf("%d\n", f[i]());
}
printf("%d\n", g());
j = func100();
k = *func100();
printf("%d %d\n", *j, k);
return 0;
}
これをめちゃめちゃ参考にしました。