【学习笔记】

如何保护软件模块的定义

将数据定义放在模块xx.c文件中,C库中结构体的封装方法
这种方式的前提是模块xx需要有动态内存分配,通过create的方式,生成变量;

通过结构体+共用体的方式[忘记了是哪个视频里看到]

利用的是共用体的思路;
1.头文件中,定义结构体A 只有数组,用来外部声明变量用
2.结构体B定义在内部,将结构体A指针转换成结构体B指针来使用;
不知道 有没有更好的办法???

共用体

共用体的内存分配必须符合两项原则:

(1)共用体的内存必须大于或等于其他成员变量中最大数据类型(包括基本数据类型和数组)的大小

(2)共用体的内存必须是最宽基本数据类型的整数倍,如果不是,则填充字节。

platform

是一个硬件抽象层,为软件提供以下几个方面的支持

  • 常用数据的定义
  • 打印方式的实现
  • 时基
  • 中断的控制

使用时 只要在软件模块的头文件中,引入即可,模块的.c文件只包含该模块的头文件;

相关推荐

  1. 学习笔记

    2024-04-26 18:40:01       15 阅读
  2. 学习笔记:机器学习

    2024-04-26 18:40:01       57 阅读
  3. 【OpenCV学习笔记】- 学习笔记目录

    2024-04-26 18:40:01       42 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-26 18:40:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-26 18:40:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-26 18:40:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-26 18:40:01       20 阅读

热门阅读

  1. CDN引入Vue3

    2024-04-26 18:40:01       13 阅读
  2. 对象指针与对象数组(拉丁舞)

    2024-04-26 18:40:01       15 阅读
  3. Unity 数据持久化——persistentDataPath储存路径

    2024-04-26 18:40:01       15 阅读
  4. 游戏热更新进修——Lua编程

    2024-04-26 18:40:01       52 阅读
  5. Elment ui 表单上滑 加载更多数据方法

    2024-04-26 18:40:01       13 阅读
  6. CSV解析

    CSV解析

    2024-04-26 18:40:01      12 阅读
  7. Promise

    Promise

    2024-04-26 18:40:01      13 阅读
  8. Vue 3组合式API深度剖析:核心API使用指南

    2024-04-26 18:40:01       13 阅读
  9. UE5主视口导航快捷键汇总

    2024-04-26 18:40:01       14 阅读
  10. vue2中的文件命名规范

    2024-04-26 18:40:01       14 阅读