本人略懒,不喜长篇大论的写些语法特性什么的,前两天无事随手打开一PDF,看到关于函数指针的用法以前没有这么用过,遂写一小例试试,其实感觉函数指针与面向对象有异曲同工之妙(如果理解有误,,还请大家多多包含并指正^_^!!!)

  1. #include <stdio.h> 
  2.  
  3. typedef struct { 
  4.     void (*print_it)(); 
  5.     int  (*max_get)(int x, int y); 
  6. }func_pointer; 
  7.  
  8. void print_err() 
  9.     printf("This is for test!\n"); 
  10.  
  11. void print_end() 
  12.     printf("****** END ***********\n"); 
  13.  
  14. int max_two(int x, int y) 
  15.     return( x > y ? x : y); 
  16.  
  17. int main(int argc, char **argv) 
  18.     func_pointer test; 
  19.     test.print_it = print_err; 
  20.     test.max_get = max_two; 
  21.     test.print_it(); 
  22.     printf("%d\n", test.max_get(9,78)); 
  23.     test.print_it = print_end; 
  24.     test.print_it(); 
  25.     return 0;