| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 497 人关注过本帖
标题:关于函数指针
只看楼主 加入收藏
lj931475
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-12-14
收藏
 问题点数:0 回复次数:2 
关于函数指针

#include <iostream>
int a(int);
void b(int x,int(*pf)(int));

int main()
{
using namespace std;
int x=1;
cout<<b(x,a);
return 0;
}

int a(int a)
{
return 1 * a;
}

void b(int y,int(*pf)(int))
{
return (*pf)(y);
}

这个程序中的 函数b中的参数double(*pf)(int) 是不是有点问题 好象在main函数中没声明 这样能使用吗?

搜索更多相关主题的帖子: int 函数 指针 void return 
2006-10-14 18:35
柳儿
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:1830
专家分:30
注 册:2004-9-23
收藏
得分:0 
可以啊。
这里的int(*pf)(int)就是一个函数指针,声明了它指向的函数的类型,而不是一个具体的函数。
感觉就像函数b里的第一个参数x,只是一个变量而已,并不具体代表某个值。

成功会使人骄傲。如果你骄傲自大,你就会停止学习。不学习,人就停止了进步
2006-10-14 19:51
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
收藏
得分:0 
只是一个型参
怕什么
看你传什么了

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-10-14 22:23
快速回复:关于函数指针
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018701 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved