[学习笔记]c++基础--day02

目录

1、函数

1.1函数的定义:返回值类型、函数名、参数表列、函数体语句、return表达式

1.2函数的语法:

1.3 函数的调用:函数名 (参数)

1.4 值传递

1.5常见的函数样式

1.6函数的声明

1.7函数的分文件编写

2、指针

2.1指针变量定义语法:数据类型 *变量名;

2.2 指针的所占内存空间

2.3空指针

2.4 野指针:指针变量指向非法访问等的内存空间

2.5 const修饰指针

2.6 指针和数组:利用指针访问数组中的元素

2.7 指针和函数:利用指针作函数参数,可以修改实参的值

3、结构体

3.1 结构体的定义和使用

3.2 结构体数组

3.3 结构体指针:通过指针访问结构体成员

3.4 结构体嵌套结构体

3.5 结构体作函数参数:将结构体作为参数向函数中传递

3.6 结构体中const使用场景

3.7 例子

3.7.1 例1:

3.7.2 例2


1、函数

将一段常用的代码封装起来,减少重复代码

1.1函数的定义:返回值类型、函数名、参数表列、函数体语句、return表达式

1.2函数的语法:

返回值类型 函数名(参数表列){

函数体语句

    return表达式

}

例:

//两个数相加的函数
//返回值类型应该是一个数,
//函数名可自己命名,例如add
//参数应该是,两个数字,num1,num2
//函数体语句为求两数相加:int sum = num1+num2;
//return返回值是一个数
int add(int num1, int num2) {
    int sum = num1 + num2;
    return sum;
}

1.3 函数的调用:函数名 (参数)

int a = 10;
int b = 20;

//调用上述的add函数
//函数名 (参数)
//当调用函数时,实参的值会传递给形参
//a和b称为实参(实际参数)
add(a, b);

//函数add返回的是一个值,故可以直接打印结果
cout<< add(a, b)<<endl;

1.4 值传递

函数调用时实参将数值传入给形参

值传递时,形参发生任何改变,并不会影响实参

例:2个数字交换,内存的大致情况(创建变量时,会分配一个内存):值传递时,只是num1和num2的数据值交换,a和b不变。

数据

a

10

b

20

num1

num2

temp

10

1.5常见的函数样式

无参无返、有参无返、无参有返、有参有返

1.6函数的声明

告诉编译器函数名称及如何调用函数。函数的实际主体可以单独定义。

函数的声明可以多次,但是函数的定义只能有一次。

函数声明之后,定义该函数可以在main()函数之后。

补充:变量

定义 VS 声明

变量定义要给变量分配内存空间,而声明没有;定义可以初始化,声明不能。

声明: extern <类型名> <变量名>;

        头文件中使用extern语句对一个文件中的全局函数进行声明;

        函数使用一个全局变量但是还未见到其定义时使用extern语句对其进行声明。

1.7函数的分文件编写

让代码结构更加清晰

  • 创建后缀名为.h的头文件
  • 创建后缀名为.cpp的源文件
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值