[C语言] 数据结构-预备知识跨函数使用内存详解编程语言
2023-06-13 09:20:37 时间
跨函数使用内存
一个函数运行结束,使用malloc函数分配的内存,如果不调用free,就不会释放
在另一个函数中还可以继续使用
#include stdio.h #include malloc.h //跨函数使用内存 //传递结构体指针,占用内存少 struct Student { int age; int score; char *name; struct Student * createStudent(struct Student *);//前置申明 void showStudent(struct Student *); int main(void){ struct Student *pst;//定义,当前只占4个字节 pst=createStudent(pst);//创建,分配内存 showStudent(pst);//展示,继续使用上面的内存 struct Student * createStudent(struct Student *pst){ pst=(struct Student *)malloc(sizeof(struct Student));//给这个结构体分配内存,返回了指针 pst- age=100;//结构体成员赋值 pst- score=9999; pst- name="taoshihan"; return pst; void showStudent(struct Student *pst){ //继续使用上面函数中分配的内存 printf("%s === %d === %d ",pst- name,pst- age,pst- score); }
12501.html
cjava相关文章
- 【C语言:内存函数】详解
- springboot 参数_bios内存启动参数配置
- C语言动态内存分配:按需分配内存。
- Rust 视界周刊 Week 5 | 驳 “Rust 等内存安全语言的安全性并不优于C++”
- 详细解读C语言结构体的内存对齐
- 【C语言进阶】——深入剖析数据在内存中的存储
- 一天一个离职小技巧之节省内存
- 【Android 内存优化】Bitmap 图像尺寸缩小 ( 设置 Options 参数 | inJustDecodeBounds | inSampleSize | 工具类实现 )
- 【C 语言】const 关键字用法 ( 常量指针 - const 在 * 左边 - 修饰数据类型 - 内存不变 | 指针常量 - const 在 * 右边 - 修饰变量 - 指针不变 )
- 【Linux 内核 内存管理】优化内存屏障 ② ( 内存屏障 | 编译器屏障 | 处理器内存屏障 | 内存映射 I/O 写屏障 )
- 【进阶】C语言——深度剖析数据在内存中的存储
- Linux基础:如何查看系统的 类型 版本 内存 磁盘 查询命令介绍
- Linux C语言实现内存池管理(linuxc内存池)
- Linux系统内存泄漏定位之旅(linux内存泄漏定位)
- 强大而简洁:Redis 内存数据库实践(redis内存数据库)
- 深入理解Linux系统内存使用分析(linux 内存使用分析)
- Linux下物理内存地址深度分析(linux 内存物理地址)
- Oracle数据库获享受巨大内存容量的好处(oracle内存量巨大)
- Redis采用内存模式实现不存盘的缓存管理(让redis不存盘)
- 基于C++执行内存memcpy效率测试的分析
- 深入C语言内存区域分配(进程的各个段)详解
- C语言内嵌汇编API内存搜索引擎实例