鱼C论坛

 找回密码
 立即注册
查看: 2487|回复: 2

来个高手解答下main里面的嵌套定义

[复制链接]
发表于 2011-12-18 12:03:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
void main()
{
int max(int ,int );
int min(int ,int );
int add(int ,int );
void process(int x ,int y,int(*fun)() );


int a,b;
printf("endter a and b: ");
scanf("%d %d",&a,&b);

printf("max= ");
process(a,b,max);

printf("min= ");
process(a,b,min);

printf("add= ");
process(a,b,add);
}
int max(int x,int y)
{
int max;
if(x>y)
{
  max=x;
}
else
{
  max=y;
}
return max;
}
int min(int x,int y)
{
int min;
if(x<y)
{
  min=x;
}
else
{
  min=y;
}
return min;
}
int add(int x,int y)
{
int add;
add=x+y;
return add;
}
无论我把int max(int ,int );
int min(int ,int );
int add(int ,int );
void process(int x ,int y,int(*fun)() );

放在main前还是后还是错误!    下面是编译器的提示
1>------ 已启动生成: 项目: 指针02, 配置: Debug Win32 ------
1>生成启动时间为 2011/12/18 12:05:51。
1>InitializeBuildStatus:
1>  正在对“Debug\指针02.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1>  所有输出均为最新。
1>ManifestResourceCompile:
1>  所有输出均为最新。
1>指针02.obj : error LNK2019: 无法解析的外部符号 _process,该符号在函数 _main 中被引用
1>D:\Users\Administrator\Documents\Visual Studio 2010\Projects\指针02\Debug\指针02.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:00.18
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========




                               
登录/注册后可看大图
该贴已经同步到 空手套小白狼的微博
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-12-18 12:51:03 | 显示全部楼层
void process(int x ,int y,int(*fun)() );变为void process(int x ,int y,int(*fun)(int,int) ){};函数定义好像不能在一个函数中吧!另外参数要完整。不知其他同仁有什么看法?
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-12-18 12:51:44 | 显示全部楼层
#include<stdio.h>
void process(int x ,int y,int(*fun)(int,int) ){};
void main()
{
int max(int ,int );
int min(int ,int );
int add(int ,int );



int a,b;
printf("endter a and b: ");
scanf("%d %d",&a,&b);

printf("max= ");
process(a,b,max);

printf("min= ");
process(a,b,min);

printf("add= ");
process(a,b,add);
}

int max(int x,int y)
{
int max;
if(x>y)
{
  max=x;
}
else
{
  max=y;
}
return max;
}
int min(int x,int y)
{
int min;
if(x<y)
{
  min=x;
}
else
{
  min=y;
}
return min;
}
int add(int x,int y)
{
int add;
add=x+y;
return add;
}
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-10 05:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表