c++的输出问题.
来源:百度知道 编辑:UC知道 时间:2024/06/01 17:10:39
#include<iostream.h>
int abs(int x)
{
cout<<"调用函数abs(int)."<<endl;
return x<0 ? -x:x;
}
double abs(double x)
{
cout<<"调用函数abs(double)."<<endl;
return x<0 ? -x:x;
}
void main()
{
cout<<"-20的绝对值为:"<<abs(-20)<<endl;
cout<<"-20.02的绝对值为:"<<abs(-20.02)<<endl;
}
本程序的运行结果为什么先输出"调用函数abs(int).",而不是先输出""-20的绝对值为:"
int abs(int x)
{
cout<<"调用函数abs(int)."<<endl;
return x<0 ? -x:x;
}
double abs(double x)
{
cout<<"调用函数abs(double)."<<endl;
return x<0 ? -x:x;
}
void main()
{
cout<<"-20的绝对值为:"<<abs(-20)<<endl;
cout<<"-20.02的绝对值为:"<<abs(-20.02)<<endl;
}
本程序的运行结果为什么先输出"调用函数abs(int).",而不是先输出""-20的绝对值为:"
cout<<"-20的绝对值为:"<<abs(-20)<<endl;
的执行顺序是:
1,运行abs(-20)
2,输出 “-20的绝对值为:” + abs(-20)的返回值
“调用函数abs(int)”是运行abs(-20)时输出的, 所以比“-20的绝对值为:”先输出。
。。。
调用函数的时候:
先输出。。。
再返回。。。
int abs(int x)
{
cout<<"调用函数abs(int)."<<endl;
return x<0 ? -x:x;
}
调用函数了呀..然后运行函数里边的代码::cout<<..再return.
因为调用函数优先级高