苏嵌正式培训—Linux C第 5 天

嵌入式正式培训第五天(20200709) 日报表

第一题:malloc/free:free怎么知道释放多大的空间?
答:free函数调用形式:free(void*ptr);
因为free函数释放ptr所指向的一块内存空间,它指向被释放区域的首地址。被释放区是由malloc或calloc函数所分配的区域(malloc函数申请的存储空间比所要求的要稍大一些,额外的空间用来记录管理信息——分配块的长度)因此free函数是知道首地址为ptr的“空间大小”。
【补充】free()并不是真正意思上的释放内存。其实,free函数只是将参数指针指向的内存归还给操作系统,并不会把参数指针置NULL。从另一个角度来看,内存这种底层资源都是由操作系统来管理的,而不是编译器,编译器只是向操作系统提出申请。所以free函数是没有能力去真正的free内存的。只是告诉操作系统它归还了内存,然后操作系统就可以修改内存分配表,以供下次分配。

第二题:static在什么情况下使用?
答:当对象中出现共享数据时,该数据被静态所修饰。例如张三李四都是姓名,姓名是属性,数据是值(张三,李四等),值不一样不能共享,只能是对象特有数据。又例如,学生都是同一个学校,所以,学校可以定义为静态变量。限制函数的作用域,在模块内的static函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明它的模块内;限制变量的作用域,在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问;

第三题:为什么要使用typedef给类型重命名?
答:一是表明该类型的特殊作用,二是将来有可能要改变这种类型(比如由int类型改为char),每一个变量的声明都要改动,而声明则使维护程序变得十分简单——只要改一下typedef语句即可。

项目名称【苏嵌实训—Linux C第  3  天】
今日进度及任务对c语言的内存管理进行学习
本日任务完成情况基本完成
本日开发收获更深一步的熟悉了linux下的环境,通过对内存池管理的学习,对之前好多迷惑的问题有了自己的解答。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值