为了账号安全,请及时绑定邮箱和手机立即绑定

为什么注释那样写就不行?不是随用随定义吗?

int main()

{

    int a=50;int f=70;int y=69;

    int m=max(a,f,y);       //    int m=max(int a=50,int f=70,int y=69);   为什么这样不行???

    cout<<m<<endl;

    return 0;

}


正在回答

1 回答

int max (int a =50, int f = 70, int y = 69); // 函数要先声明,可以对函数内的形式参量进行默认初始化
int main ()
{
    int i =50; int j = 100; int k  = 200; // 对main函数体内的变量的声明并初始化
    int m = max (i, j ) //  调用函数max, max函数的返回值对m进行初始化。 此时使用i, j作为实际参数传递给max,因为没有实参传递给声明中的形参y, 所以y依然保留默认声明y=69
    cout << m << endl;
    return 0;
}

函数要先声明,后调用。

首先在你的整个程序里面,没有声明函数

接着在函数内,int m = max ( int a ........) , 编译器是无法理解你这段是什么意思的。我觉得大概率会报错说你没有声明函数MAX。 且如果你已经在main外声明了max,那么这么写编译器会告诉你不可以重复定义形参(因为你有一次在max 里面定义了形参的数据类型为int)。

0 回复 有任何疑惑可以回复我~
#1

出来写代码 提问者

max函数已经声明了,不知道 不可以重复定义形参(即使都是int类型),感谢
2019-07-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之离港篇
  • 参与学习       122700    人
  • 解答问题       474    个

C++扫清通往面向对象的最后一道障碍,将所有知识点融会贯通

进入课程

为什么注释那样写就不行?不是随用随定义吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信