C语言基础

四、内存问题

1、malloc申请空间:申请空间后会分配,按照int类型所需要的去处理。Int*  /4 ;int arr[]   /10

2、free: 所指向的区域进行回收

当变量/数组等指向发生变化时,原指向的区域在低级语言中一直被占着,无法释放,造成内存泄露。高级语言JAVA会自动回收该区域。

3、内存泄露:内存30G,只有20G能用,那10G一直无法利用。

解决办法:重启程序。原理:进程是独立运行的程序,当程序运行时,会独占一块内存,你在这个内存上做啥都行,use or waste。当关闭该程序后,操作系统会回收那块内存。

五、small tips:

1、申请空间的原理:申请空间后标记为有效

     删除的原理:挪动边界,标记为无效

     回收站:只是将数据标记为无效,如果你想,可以采取方法恢复。守法呀!!!

2、无论是结构体还是malloc,申请空间后会有一个随机数。但是在方法里声明变量,其默认值为null(指针)/0(变量)。

3、结构体类型的指针所指向的区域:写法   d1->x1 = 867;

      结构体类型的非指针相等和int相等无区别

4、作为方法的入参出现&,那么就是C++语法

5、Char 类型数组,结尾为‘\0’。回车给当字符了。

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值