[C语言] 数据结构-预备知识跨函数使用内存
2023-02-18 15:41:27 时间
跨函数使用内存
一个函数运行结束,使用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); }
相关文章
- 记一次 .NET 某自动化采集软件 崩溃分析
- [C# 中的序列化与反序列化](.NET 源码学习)
- .NET 向量类型的运算结果范例——用于学习Vector类所提供百多个向量方法
- 树莓派(香橙派)通过.NET IoT 操作SPI编写屏幕驱动 顺手做个四足机器人(一)
- WPF自定义控件之消息提示
- .NET跨平台框架选择之一 - Avalonia UI
- 篇(16)-Asp.Net Core入门实战-权限管理之用户创建与关联角色(ViewModel再用与模型验证二)
- 学习ASP.NET Core Blazor编程系列十——路由(下)
- 代码生成器(CodeBuilder) 2.9.4 稳定版
- 篇(15)-入门实战-权限管理之用户创建与关联角色(ViewModel再用与模型验证一)
- 篇(14)-Asp.Net Core入门实战-权限管理之角色编辑和赋权(ViewModel-DTO初探)
- 算法-2 选择排序、冒泡排序、插入排序
- 篇(13)-Asp.Net Core入门实战-将功能代码增加异步功能Async和配置简单防范CSRF攻击
- NET 6 实现滑动验证码(一)、创建工程
- 算法-1 算法复杂度
- 在WPF中使用Prism弹出自定义窗体样式的对话框
- 使用Fody时,CS-SCRIPT动态代码无法找到程序集
- C# 使用SIMD向量类型加速浮点数组求和运算(3):循环展开
- aspnetcore两种上传图片(文件)的方式
- WPF输入验证提示