C语言问题请教

[复制链接]
查看11 | 回复3 | 2011-10-28 15:19:10 | 显示全部楼层 |阅读模式
这是声明一个函数指针int 是函数的返回值类型(*open)是声明一个函数指针的语法,名叫open(struct inode *,struct file*)是函数的参数int(*open) (struct inode *,struct file*)的意思就是声明一个函数指针open,这个函数指针可以指向返回值为int,参数为struct inode *,struct file*的函数 可以用(*open)(参数1,参数2)来执行这个函数指针指向的函数这样做的好处是有多个相似的函数是,可以动态的指定调用哪一个函数来实现不同的功能...
回复

使用道具 举报

千问 | 2011-10-28 15:19:10 | 显示全部楼层
不是,是定义了一个函数int(*open) (struct inode *,struct file*)他是个函数格式(*open)相当于是要求返回的函数值是指针类型的...
回复

使用道具 举报

千问 | 2011-10-28 15:19:10 | 显示全部楼层
int(*open) (struct inode *,struct file*)(*open)表示是个函数指针,如果不加括号,int * open(xxx),那就表示返回值为int 的指针了...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行