函数main 每个C++程序都要定义一个名字为main的函数, C++程序的执行是从main开始的。函数main返 回值类型为int,参数常省略。例如: int main() { ..return =1; return 0; } 般情况下,返回0表示程序正常结束;返回负数 如-1)表示程序非正常结束
函数main ◼ 每个C++程序都要定义一个名字为main的函数, C++程序的执行是从main开始的。函数main返 回值类型为int,参数常省略。例如: int main() { ...... ... return -1; ...... return 0; } ◼ 一般情况下,返回0表示程序正常结束;返回负数 (如-1)表示程序非正常结束
函数的调用 对于定义的一个函数,必须要调用它,它的函数体才会 执行。 ·除了函数main外,函数的调用都是从main开始的。 ● main一般是由操作系统来调用 函数调用的格式如下: <函数名>(<实在参数表>) <函数名>:某个已定义函数的名字; 。<实在参数表>:由零个、一个或多个表达式(用逗号隔开 构成 ● 实参的个数和类型应与相应函数的形参相同。类型如果不同, 编译器会试图进行隐式转换,转换规则是把实参类型转换成 形参类型。 注意:不能用goo语句从函数外转入函数体
函数的调用 ◼ 对于定义的一个函数,必须要调用它,它的函数体才会 执行。 • 除了函数main外,函数的调用都是从main开始的。 • main一般是由操作系统来调用。 ◼ 函数调用的格式如下: <函数名>(<实在参数表>) • <函数名>:某个已定义函数的名字; • <实在参数表>:由零个、一个或多个表达式(用逗号隔开) 构成 • 实参的个数和类型应与相应函数的形参相同。类型如果不同, 编译器会试图进行隐式转换,转换规则是把实参类型转换成 形参类型 。 ◼ 注意:不能用goto语句从函数外转入函数体
函数调用的例子 001001 int main() int x; C0ut<<"请输入一个正整数:": cin >X; cout <"Factorial of "<x <is ←<factorial((x)/调用阶乘函数 <endl; return 0;
函数调用的例子 ...... int main() { int x; cout << "请输入一个正整数:"; cin >> x; cout << "Factorial of " << x << " is " << factorial(x) //调用阶乘函数 << endl; return 0; }
00000 int main() double a; int b; cout<<"请输入a和b:"; cin >a >b; cout<<a<<"的”<<b<<"次方是:" <power(a,b)<<endl; return 0;
...... int main() { double a; int b; cout << "请输入a和b:"; cin >> a >> b; cout << a << "的" << b << "次方是:" << power(a,b) << endl; return 0; }
函数调用的执行过程 计算实参的值 (对于多个实参,C+十没有规定实参 的计算次序);(f(X,++X);? 把实参分别传递给被调用函数的形参;(值或地址) 执行函数体: 函数体中执行return语句返回函数调用点,调用 点获得返回值(如果有返回值)并执行调用之后的 操作。 可以把有返回值的函数调用作为操作数放在表达式 中参加运算:x+power(X,y)*Z
函数调用的执行过程 ◼ 计算实参的值(对于多个实参,C++没有规定实参 的计算次序);(f(x,++x);?) ◼ 把实参分别传递给被调用函数的形参;(值或地址) ◼ 执行函数体; ◼ 函数体中执行return语句返回函数调用点,调用 点获得返回值(如果有返回值)并执行调用之后的 操作。 ◼ 可以把有返回值的函数调用作为操作数放在表达式 中参加运算 :x+power(x,y)*z