ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

【c++】c语言入门到c++使用高手: c语言入门之函数(二)

【c++】c语言入门到c++使用高手: c语言入门之函数(二)

第七章 函数

第二节 函数调用方式以及嵌套调用

1. 函数调用的一般形式

注意严格区分函数调用和函数定义这两个概念区别

函数调用的一般形式: 函数名(实参列表);

  • 若调用没有形参的函数,实参列表可以没有,但括号不能省略,如果实参列表包含多个参数,则各个参数之间用逗号分开,对于函数中,如果形参包含多个参数,用逗号分开

  • 实参,形参个数要相等,类型要一致,按顺序对应,一一传递

2. 函数调用的方式

按照函数调用在程序中出现的位置,有三种调用方式

  • 把函数作为一个语句: printhello();

  • 函数出现在一个表达式中,这种表达式称为函数表达式,函数需要返回一个确定的值用来参加表达式的运算:sum_100 = sum_2(3, 5)*100;

  • 函数调用可以作为函数的参数: sum=sum_2(10, sum_2(3, 5));

3. 函数声明

  • 函数声明:函数说明自己,函数声明放在任何源代码文件的具体函数之前,才能保证这些具体的函数调用其他函数时,这些被调用的函数是声明过的函数

  • 函数声明的一般形式: 类型标识符 函数名(形参列表);注意有分号,例如:void printhello();,只要把函数第一行copy过来,去掉大括号和其中的内容,最后加个分号就可以了

4. 函数的嵌套调用

  • 函数嵌套定义:在函数中定义另外一个函数,这个是非法的.

  • c语言允许函数嵌套调用, 也就是说,在调用一个函数的过程中,被调用的的函数再去调用第三个函数,甚至第四个,以此类推

#include <iostream> void qtfunc1(); void qtfunc2(); void qtfunc3(); void qtfunc1() { printf("嵌套1开始执行\n"); printf("嵌套1结束执行\n"); } void qtfunc2() { printf("嵌套2开始执行\n"); qtfunc3(); printf("嵌套2结束执行\n"); } void qtfunc3() { printf("嵌套3开始执行\n"); printf("嵌套3结束执行\n"); } void test_qt() { qtfunc1(); qtfunc2(); } int main() { std::cout << "Hello, World!" << std::endl; test_qt(); return 0; }
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进