C语言学习/复习34--内存相关笔试题/C与C++的内存/柔性数组

一、动态内存管理笔试题

1.值传递

注意事项1:指针的地址传递需要将指针的地址用二级指针接收,本题属于值传递不属于地址传递

修改:1改为地址传递,2释放malloc()函数申请的空间

注意事项2:printf()字符串时,参数实际是字符串首元素的地址

2.在栈上申请空间

注意事项1:函数相关的存于栈上,出了函数后栈中的数据自动销毁

修改:static修饰后变为静态变量存于静态区不存于栈上,直到程序结束才会释放

3.malloc()与free()

修改:添加与malloc()相配的free()手动释放堆上的空间

4.free()与指针置空

修改:free()后记得将指针置空,否则空间还给内存但指针还指向一块没有权限操控的空间

二、C/C++程序的内存开辟

1.栈、堆、静态区

注意事项1:static修饰局部变量后生命周期变长

三、柔性数组

1.定义:

2.两种案例:

3.柔性的特点:

实例1:柔性数组与malloc(),realloc()

实例2:尝试用指针替换柔性数组

两种方式的比较:

相关推荐
小二·1 分钟前
Go 语言系统编程与云原生开发实战(第36篇)
开发语言·云原生·golang
奔跑的蜗牛FelixChioa1 分钟前
python连接sqlite快速入门
开发语言·python·sqlite
王夏奇1 分钟前
python-PyQt6库学习
开发语言·python·学习
不会写DN2 分钟前
Go中的Tcp编程为什么总是能看到handle?
开发语言·网络·后端·tcp/ip·golang
圆弧YH3 分钟前
排版基本操作
学习
飞Link5 分钟前
进阶时序建模:门控递归单元 (GRU) 深度解析与实战
开发语言·人工智能·rnn·深度学习·gru
格林威6 分钟前
工业相机图像高速存储(C++版):先存内存,后批量转存方法,附海康相机实战代码!
开发语言·c++·人工智能·数码相机·计算机视觉·工业相机·堡盟相机
啊阿狸不会拉杆7 分钟前
《计算机视觉:模型、学习和推理》第 19 章-时序模型
人工智能·python·学习·机器学习·计算机视觉·时序模型
weixin_649555677 分钟前
C语言程序设计第四版(何钦铭、颜晖)第七章之利用数组求矩阵各行元素之和并输出
c语言·算法·矩阵
Errorbot9 分钟前
GPS学习(二)使用树莓派5和GPS PPS 实现微秒级精度的时间同步
学习·ubuntu·gps