c++ 调用函数中参数太多

#include<iostream>usingnamespacestd;classRect{private:doublelength;doublewidth;public... #include<iostream>
using namespace std;
class Rect
{
private:
double length;
double width;
public:
double getLength();
double getWidth();
double getPerimeter();
double getArea();
void setLength(double l);
void setWidth(double w);
void display();
};
void Rect::setLength(double l)
{
length =l;
}
void Rect::setWidth( double w)
{
width =w;
}
void Rect::display()
{
cout<<"长:"<<length<<"宽:"<<width<<endl;
}
double Rect::getLength()
{
return length;
}
double Rect::getWidth()
{
return width;
}
double Rect::getPerimeter()
{
return 2*(length+width);
}
double Rect::getArea()
{
return length*width;
}
int main()
{
Rect myrect;
myrect.getLength(10.0);(这两句)
myrect.getWidth(5.0);(这两句)
myrect.display();
cout<<"面积:"<<myrect.getPerimeter()<<endl;
cout<<"周长:"<<myrect.getArea()<<endl;
}
展开
 我来答
yinfengnong
2018-12-06 · TA获得超过5619个赞
知道大有可为答主
回答量:2344
采纳率:89%
帮助的人:2294万
展开全部
  1. fun函数声明错误,正确是 char fun(char a[20], char b);

  2. int b; 变量 b重复定义,此句去掉。

  3. fun(a[20], e);  函数参数传递错误,正确的是 fun(a, e);

正确代码如下:

#include <stdio.h>
#include<string.h>

int main()
{

char fun(char a[20], char b); // 函数声明错误

char a[20], e, b[200];

// int b; // b重复定义了,此句去掉

gets(a);

scanf("%c", &e);

fun(a, e); // a 参数传递错误,正确 fun(a, e)
}

char fun(char a[20], char b)
{
int i;
for (i = 0; i<20; i++)
if (a[i] == b)
a[i] = a[i + 1];

return a[20];
}
Silin_Silin
2014-09-20 · TA获得超过470个赞
知道小有建树答主
回答量:303
采纳率:50%
帮助的人:385万
展开全部
"调用函数中参数太多",你的Rect类中的getLength()方法和getWidth()方法都是没有参数的:
double getLength();
double getWidth();
而你调用是传递了一个double类型参数进去,当然多啦。你应该是想调用set方法吧:
myrect.setLength(10.0);
myrect.setWidth(5.0);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-09-20
展开全部
myrect.getLength(10.0);\\(参数为空) myrect.getWidth(5.0);\\(参数为空)
\\看你的函数实现
\\改为 myrect.setLength(10.0); myrect.setWidth(5.0);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kirkbd
2014-09-20 · TA获得超过321个赞
知道小有建树答主
回答量:394
采纳率:0%
帮助的人:175万
展开全部
myrect.getLength(10.0);(这两句)//应该是setLength (10.0);myrect.getWidth(5.0);(这两句)// setWidth(5.0);
函数写错了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
youloveS捈
2014-09-20 · 超过74用户采纳过TA的回答
知道答主
回答量:177
采纳率:75%
帮助的人:66.1万
展开全部
你第四行多了个“)”。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式