关于c++的小问题 简单的

来源:百度知道 编辑:UC知道 时间:2024/06/23 05:31:19
#include <iostream.h>
void f(int),f(double);
void main()
{
double x=34.56;
f(x);
char y='e';
f(y);
}
void f(int m)
{
cout<<m<<endl;
}
void f(double m)
{
cout<<m<<endl;
}
输出结果是什么 为什么~?
详细讲一下 好的话再额外追加分数 谢谢
#include <iostream.h>
int f(int x,int y=10);
void main()
{ int x=6;
cout<<f(x)<<endl;
cout<<f(x,f(x))<<endl;
cout<<f(x,f(x,f(x)))<<endl;
}
int f(int m,int n)
{ int s=m+n;
return s;
}
还有这个 为什么形参有两个 实参只给一个也行啊

1. 34.56
2. e的asc码值

这个叫做多态,你可以定义多个同名不同参数的函数,程序会自己寻找最适合的函数运行

补充的回答:
那个是参数缺省值,int f(int x,int y=10);
y默认是10,如果你只有1个参数,那么y就缺省是10了

34.56
101

#include <iostream>
using namespace std;

void f(int);
void f(double);
int main()
{
double x=34.56;
f(x);
char y='e';
f(y);
system("pause");
int m;
cin>>m;
return 0;
}
void f(int m)
{
cout<<m<<endl;
}
void f(double m)
{
cout<<m<<endl;
}

自己运行看下就知道了