问个C++问题

[复制链接]
查看: 3645   回复: 8
发表于 2023-5-12 06:52:56 | 显示全部楼层 |阅读模式
  1. float max(float x,float y);int main(){    float a,b,m;    scanf("%f,%f",&a,&b);    m=max(a,b);    printf("Max is %f\n",m);}float max(float x,float y){    if(x>=y)        return x;    else        return y;}
复制代码
求问大佬,
float max(float x,float y);

float max(float x,float y)
{
    if(x>=y)
        return x;
    else
        return y;
}
有什么关联吗,开头的float max(float x,float y);语句是不是为了把下面的max定义给拉到main前,以确保main运行前max被定义,这种写法叫什么,有没有拓展资料给小弟看看
回复

使用道具 举报

发表于 2023-5-12 06:53:56 | 显示全部楼层
你的代码应该是先声明max函数,后定义max函数。你也可以把max写到main前面,这样第一句声明就可以删了。
  1. float max(float x,float y){    if(x>=y)        return x;    else        return y;}int main(){    float a,b,m;    scanf("%f,%f",&a,&b);    m=max(a,b);    printf("Max is %f\n",m);}
复制代码
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:54:07 | 显示全部楼层
函数声明,让main事先知道有这么个函数,编译才不会错
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:54:18 | 显示全部楼层
函数声明与函数定义,函数声明必须先于函数定义
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:54:30 | 显示全部楼层
函数声明 后面有个分号
b函数在a函数之后,但是b函数要调用a函数 时要用到

代码少换个顺序就不用写声明
代码多了在开头写个声明 顺序可以随意一点
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:55:21 | 显示全部楼层
函数声明
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:55:44 | 显示全部楼层
函数声明 与 函数定义 的关系
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:55:50 | 显示全部楼层
如果函数定义在main后面 在main调用时 编译器是不知道这个函数的参数、返回值 无法检查你是否正确调用这个函数 所以需要在调用前声明这个函数
回复 支持 反对

使用道具 举报

发表于 2023-5-12 06:56:43 | 显示全部楼层
学c还是要买本书认真看下,很多东西书里是有系统讲解的,而网上的教程东拼西凑的很难看全。
回复 支持 反对

使用道具 举报

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

本版积分规则