#include <stdio.h>
int add (int a, int b)
{
return (a + b);
}
int do_it(int (*ADD)(int, int), int a, int b)
{
printf ("%d\n", ADD (a, b));
return 0;
}
int main (int argc, char **argv)
{
int a = 3;
int b = 4;
do_it(add, a, b);
return 0;
}
#include <stdio.h>
typedef int (*ADD) (int a, int b);
int add (int a, int b)
{
return (a + b);
}
int sub (int e, int f)
{
return (f - e);
}
int do_it(ADD func, int a, int b)
{
printf ("%d\n", func (a, b));
return 0;
}
int main (int argc, char **argv)
{
int a = 3;
int b = 4;
ADD add_p = add;
ADD sub_p = sub;
do_it (sub, a, b);
do_it (add, b, a);
do_it (add_p, a, b);
do_it (sub_p, a, b);
return 0;
}
beyes@linux-beyes:~/C> ./call_back.exe
1
7
7
1
欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) | Powered by Discuz! X3.2 |