码迷,mamicode.com
首页 > 其他好文 > 详细

typedef函数指针那些事

时间:2014-07-18 20:01:15      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:style   color   使用   os   width   io   

 首先来介绍下函数指针:

  函数指针是指向函数的指针变量,即本质是一个指针变量。 

int (*f) (int x); /* 声明一个函数指针 */

 f=func; /* 将func函数的首地址赋给指针f */

使用的时候可以直接通过(*f)(x)这样的形式。网上有很多的函数指针资料,就不多说了。

当我们在函数指针前加上typedef,就变成什么样了呢?

比如typedef  INT32  (*WNDPROC)(HWND, INT32, WPARAM, LPARAM);

这条语句的意思是定义了一个类型WNDPROC,这个类型的对象是一个函数的指针,函数的返回值为INT32,参数类型为HWND, INT32, WPARAM, LPARAM。

举个例子:

 

  1. typedef char (*PTRFUN)(int);   
  2. PTRFUN pFun;   
  3. char glFun(int a)
  4.    printf("%d\n",a);
  5.    return;
  6. }   
  7. void main()   
  8. {   
  9.     pFun = glFun;   
  10.     pFun(2);   

 

 程序结果打印2出来。

typedef的作用相当于给函数起了个别名,在某些情况下有利于代码简化,跨平台调用。

 

 

typedef函数指针那些事,布布扣,bubuko.com

typedef函数指针那些事

标签:style   color   使用   os   width   io   

原文地址:http://www.cnblogs.com/hedengfeng/p/3850625.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!