C++ 函数学习 1

C++函数学习指南

学习目标

函数内容回顾

1.函数的三要素:返回值类型、函数名、参数列表

return_type functionName(parameterList){
	//函数体
}

所谓的返回值(return type),就是做某件事的结果。比如说买蛋糕,就是最终买的蛋糕的结果,买了一个什么蛋糕?有草莓的,有12英寸的,还有提拉米苏的,所以我们要看具体的类型到底是什么样子的。可能是int,也可能事double,bool啥的都有可能

函数名 (functionName)需要咱们来注意一下函数的命名规则:只能由数字字母下划线组成,数字不能做开头,区分大小写,不能够跟关键字重名。

参数(parameter),我们可以理解为做某件事需要的必要条件,当然不是做所有的事情都需要有一个必要的条件;例如:买蛋糕的话,我们需要带钱去买蛋糕。例如:想吃饭,你嗷嗷去吃就好了!

书写自定义函数

以一个sum函数为例子来看

int sum(int a,int b){
	return a + b;
}
int main(){
    int res = sum(5,3);
    cout<<res<<endl;
    //当然也可以直接调用
}

这里面我们讲解各个部分对应的含义是什么,让学生可以加深印象!

int sum(int ,int );//也可以在上面提前安排好定义操作
int main(){
    int res = sum(5,3);
    cout<<res<<endl;
    //当然也可以直接调用
}
int sum(int a,int b){
	return a + b;
}

函数定义注意点

  1. 函数的定义和函数原型可以分开定义,但是在使用原型书写时要注意以分号作为结尾
  2. 函数原型写法中,参数名称可以省略,可以只写参数类型
  3. C++中的返回值类型不能是数组,但是可以是其他类型。(可以将数组作为结构或者对象的组成部分来进行返回)

课堂练习

image

需要先思考需不需要返回值!

image

根据以上代码结构来去解决图中的问题操作!

参数和按值传递

观察如下图所示的代码,来思考一下打印的结果是多少?

按值传递的机制

image

这里经常会有一个误区,大家容易思考觉得变量的变化依然是num++就好了,所以输出的是数字10

但实际上输出的还是9!

因为在调用函数这行代码的时候,我们是需要传递值的。

这个时候我们的C++ 会在内存当中申请一个空间(栈空间),来去复制出来一个副本!类似产生了一个克隆体和你一模一样,但是就不是原来的呢个值。而在传递的时候,你要明白,传的这个是原来的呢个变量吗?不是!

是呢个副本!所以进去到自定义函数的时候,num这个原来的变量自始至终都没有发生变化!
image

再将代码书写一边!

image


image

观察上面两种操作方式有什么不同之处!

posted @ 2024-07-30 23:09  苗青山编程学  阅读(21)  评论(0)    收藏  举报
1 2 3