指针函数

以前把,我觉得,数组只能传数据啊,字符串呀,没想到还可以传函数。

在这之前说一下指针函数吧。

举几个列子  void (*p)(void);  int (*p)(void);  char (*p)(char);  指针函数长这个样子,注意一定要写出(*p),这个括号是必须的。

怎么用呢。

用这个指针函数 void (*p)(void);

先设个函数吧。 void print(){  printf("hi,good night!\n");}

void main()

{

      p= print;

      (*p)();

}

就这么使用,指针函数里面的符合说明符要和调用的函数一样,就是指针函数前面的void 要对于 print 前面的void,不能是char,int什么的,后面括号里面的也一样。

好了,这样我们真的函数可以传给指针函数。

前面说到了数组可以传递函数,当然就是通过指针来实现的。

我们通过定义一个数组指针函数,也就是多个指针函数的意思,数组指针是指针,指针数组是数组。

废话不说了。

void (*p[4])(void);

void print()

{

   printf("good bye!");

}

void main()

 { 

   p[4]=print;

   p[4]();

还有种方法就是

typedef void(*p)(void);

p lw[4];

void main()

{

    lw[1]=print;

    lw[1]();

}

效果是一样的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值