| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 434 人关注过本帖
标题:小弟学 指向函数的指针 有地方不懂
只看楼主 加入收藏
a7882669
Rank: 4
等 级:业余侠客
帖 子:192
专家分:290
注 册:2012-4-17
结帖率:80%
收藏
已结贴  问题点数:20 回复次数:2 
小弟学 指向函数的指针 有地方不懂
#include <stdio.h>
int max(int a,int b);
int main ()
{
    int x,y;
    int (*p)(),s;
    p=max;
    scanf("%d%d",&x,&y);
    s=(*p)(x,y);
    printf("%d",s);
    return 0;
}

int max(int a,int b)
{
    int z;
    if(a>b)  z=a;
    else z=b;
    return z;
}
--------------------配置: mingw5 - CUI Debug, 编译器类型: MinGW--------------------

正在编译 D:\我的资料库\Documents\C-Free\Temp\未命名4.cpp...
[Error] D:\我的资料库\Documents\C-Free\Temp\未命名4.cpp:7: error: invalid conversion from `int (*)(int, int)' to `int (*)()'
[Error] D:\我的资料库\Documents\C-Free\Temp\未命名4.cpp:9: error: too many arguments to function

编译中止 D:\我的资料库\Documents\C-Free\Temp\未命名4.cpp: 2 个错误, 0 个警告
搜索更多相关主题的帖子: return include Documents max invalid 
2012-09-06 20:50
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
int (*p)(),s;

这里既然是函数指针 就得和下面你用的时候的参数是一样的啊 否则编译器怎么知道你这个函数指针指向的函数的参数呢


2012-09-06 20:53
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:20 
如果你会看错误信息 这个问题你根本就不会问

invalid conversion from `int (*)(int, int)' to `int (*)()'

系统说 不能转 所以你得用前面的写法 后面的是错的
2012-09-06 20:54
快速回复:小弟学 指向函数的指针 有地方不懂
数据加载中...
 
   



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

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