C language callback function, callback function
1 # include
2
3 void PrintNum1 (int n );
4 void PrintNum2 (int n );
5 void ShowNum (int n, void (* ptr) (int ));
6
7 void PrintMessage1 ();
8 void PrintMessage2 ();
9 void PrintMessage3 ();
10 void ShowMessage (void (* ptr )());
11
12 int main (){
13 ShowNum (11111, PrintNum1 );
14 ShowNum (22222, PrintNum2 );
15 ShowMessage (PrintMessage1 );
16 ShowMessage (PrintMessage2 );
17 ShowMessage (PrintMessage3 );
18}
19
20 void PrintNum1 (int n ){
21 printf ("Test1 is called, the number is % d \ n", n );
22}
23
24 void PrintNum2 (int n ){
25 printf ("Test2 is called, the number is % d \ n", n );
26}
27
28 void ShowNum (int n, void (* ptr )()){
29 (* ptr) (n );
30}
31
32
33 void PrintMessage1 (){
34 printf ("This is the message 1! \ N ");
35}
36
37 void PrintMessage2 (){
38 printf ("This is the message 2! \ N ");
39}
40
41 void PrintMessage3 (){
42 printf ("This is the message 3! \ N ");
43}
44
45 void ShowMessage (void (* ptr )()){
46 (* ptr )();
47}