苏嵌嵌入式第六天Linux实训

2020–7–9开始了第六天的实训内容,今天要继续学习C语言,对于我来说,今天学的大部分都是新的知识,也许有之前学过的,现在却忘了的。以下为今天学习内容的总结和作业。

1、函数

函数的三要素:函数名、形参、返回值
函数名:
 命名—>自注释性 动词 + 名词 add_user del_user
函数参数:
实参是什么类型,形参就要定义为什么类型;<传数组名>
传一维数组名,用元素的指针;
传二维数组名,用一维数组指针;
传三维数组名,用二维数组指针;
传指针数组名,用指针的指针;

传地址和传值:什么时候传地址,什么时候传值?
当只使用不修改实参变量的值,传实参变量名;func(实参变量名)
当使用即修改实参变量的值,传实参变量的地址;func(&实参变量名)

传入参数、传出参数<如何让函数返回多个值?>

函数的返回值;return exit

相关材料:华为编程规范和范例

函数指针变量:保存函数的入口地址;
函数名作用:指针常量,保存函数的入口地址;(函数地址)
add++
函数指针作用:做函数形参,实现回调函数

2.内存管理

在这里插入图片描述
char *ptr=“hello world”;
*ptr=‘H’;

4.内存池
malloc,free是一个开销非常大的操作
内存池 将使用多次malloc 操作改变成只使用1次

关键字

右边为解释register
右边绘图为解释register,(‘寄存’后加器

在这里插入图片描述
学习计划

作业

1、C语言中free函数是如何确定要释放多少内存空间的?
把前4字节存成该块内存的实际大小,并把前4字节后的地址返回。 free释放的时候会根据传入的地址向前偏移4个字节 从这4字节获取具体的内存块大小并释放。

2、static什么时候使用?
Static是静态变量,静态变量是固有的,可以直接被引用,其他成员变量仅仅在声明、生成实例对象后才存在,才可以被引用。所以把静态变量称为类变量,非静态变量称为实例变量。静态方法称为类方法,非静态方法称为实例方法。当函数没有访问对象特有的数据时可以使用static 来修饰方法。静态变量可以直接用类名引用。

3.为什么要使用typedef给变量重命名?
使用typedef为现有类型创建别名,定义易于记忆的类型名。
typedef 还可以掩饰复合类型,如指针和数组。

重命名的好处是能区分不同场合使用不同数据类型,取别名就是为了让在不同使用环境下让数据类型变得有“具体含义”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值