duolaemon 发表于 2023-5-12 06:52:56

问个C++问题

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被定义,这种写法叫什么,有没有拓展资料给小弟看看

manof 发表于 2023-5-12 06:53:56

你的代码应该是先声明max函数,后定义max函数。你也可以把max写到main前面,这样第一句声明就可以删了。
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事先知道有这么个函数,编译才不会错

l5FAw091 发表于 2023-5-12 06:54:18

函数声明与函数定义,函数声明必须先于函数定义

灌水王 发表于 2023-5-12 06:54:30

函数声明 后面有个分号
b函数在a函数之后,但是b函数要调用a函数 时要用到

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

koolmen 发表于 2023-5-12 06:55:21

函数声明

woshibaicc 发表于 2023-5-12 06:55:44

函数声明 与 函数定义 的关系

lcf 发表于 2023-5-12 06:55:50

如果函数定义在main后面 在main调用时 编译器是不知道这个函数的参数、返回值 无法检查你是否正确调用这个函数 所以需要在调用前声明这个函数

tonsky 发表于 2023-5-12 06:56:43

学c还是要买本书认真看下,很多东西书里是有系统讲解的,而网上的教程东拼西凑的很难看全。
页: [1]
查看完整版本: 问个C++问题