转载:void(*fun)()与void*fun()的区别

void * fun( ) ; //声明一个返回值是任意类型的指针 的函数fun()

void vfun( ) ; //声明一个没有返回值 的函数vfun()

void (*)( ) 这是一种变量类型,可用来定义函数指针变量,如:

void (*pfun)( ) ; //声明一个函数指针变量pfun,该类型函数就是void vfun( ) 这种类型,pfun可以指向这类函数,如:pfun=vfun ;

参考代码:

#include <stdio.h>
void foo( void )
{
printf(“date: %s\n”, DATE );
}
void main()
{
void (*p)( void ) ;

p=foo ; //指向某个函数
p();//调用方法1
(*p)(); //调用方法2
foo();

}
附加:
void * data 是一个无类型的指针参数,任意类型指针可以赋值给data,当data赋值给其他类型时需要先指定数据类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值