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:尝试用指针替换柔性数组

两种方式的比较:

相关推荐
谢亮_vipxieliang6 分钟前
JavaScript this 指向完全指南:调用位置决定一切
开发语言·javascript·ecmascript
denlaku11 分钟前
JDK 13 新特性详解
java·开发语言
Dark_Fairy13 分钟前
CMeKG_tools 知识图谱项目速成教程(13课共24H)
学习
悟乙己20 分钟前
AFAC2026 赛题四金融长文本 Agent竞赛学习笔记:关联技术(二)
笔记·学习·金融
念越23 分钟前
题库、练习与错题本代码阅读
开发语言·数据结构
l1t25 分钟前
几种数据库软件count(distinct)和count()from group by子查询性能测试
开发语言·数据库
熊猫钓鱼>_>34 分钟前
大学图论第 6 讲:网络流与二分图匹配——对偶性让瓶颈自己现形
开发语言·算法·面试·职场和发展·图论·校招·面经
方便面不加香菜34 分钟前
C++ 关于多态的知识点讲解
开发语言·c++
我送炭你添花42 分钟前
ASA原理与电子维修实战:前言 一路修来,一路学习
运维·网络·学习
jimy11 小时前
C++ 类成员函数的内联定义(inline)详解
开发语言·c++