打印

这个函数指针的定义有点晕??有人讲一下吗?

[复制链接]
1760|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
snakeemail|  楼主 | 2010-3-31 22:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
snakeemail|  楼主 | 2010-6-28 19:42 | 只看该作者
空函数指针

使用特权

评论回复
板凳
xhtxzxw| | 2010-6-29 03:03 | 只看该作者
举例吧。一个装置里有N+1个按键,键值分别=0,1,...,N,每个按键有各自的处理函数,分别是Key0_Proc(),Key1_Proc(),...,KeyN_Proc()。

void Key0_Proc()
{......}
void Key1_Proc()
{......}
... ...
void KeyN_Proc()
{......}
char Get_Key_Value()
{........}

typedef void (*Function)();
Function pCallBack;
void main()
{
    ......
   while(1)
   {
       switch( Get_Key_Value() )
       {
            case 0: pCallBack = Key0_Proc;   break;
            case 1: pCallBack = Key1_Proc;   break;
            ...........
            case N: pCallBack = KeyN_Proc;   break;
       }
       pCallBack();
    }
}

使用特权

评论回复
地板
ayb_ice| | 2010-6-29 08:07 | 只看该作者
typedef void (*Function)(void); // 声明一个函数指针类型,没有返回值,没有参数传递

Function pCallBack; // 定义一个pCallBack函数指针,与Function 类型相同

...

使用特权

评论回复
5
ecomputer| | 2010-6-30 21:05 | 只看该作者
c语言书上有详细说明

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:提供500W线性 交流电源。0~300VAC,45~500Hz 提供10KW,0-330V直流电源,具体见http://blog.21ic.com/user1/3639/archives/2012/88528.html

547

主题

1910

帖子

8

粉丝