[STM32F1] 在F1使用全局变量声明一个结构体一般都怎么声明较好

[复制链接]
4419|66
adolphcocker 发表于 2024-9-15 10:42 | 显示全部楼层
为了节省内存,特别是当结构体包含数组时,可以考虑使用静态初始化来直接赋予特定的值,这样数组在声明时就会被初始化,之后只有显式赋值才会改变其内容。
sheflynn 发表于 2024-9-15 14:43 | 显示全部楼层
在源文件(.c)中声明全局变量,并使用extern关键字在其他源文件中引用该变量。
sesefadou 发表于 2024-9-15 16:44 | 显示全部楼层
如果结构体会频繁使用,可以使用typedef为其定义一个新的类型名,这样可以简化后续的变量声明和操作。
claretttt 发表于 2024-9-15 18:25 | 显示全部楼层
如果结构体仅在某个特定的作用域内使用,可以考虑将其声明为静态局部变量
t60yz 发表于 2024-9-15 18:49 来自手机 | 显示全部楼层
结构体里有个数组
elsaflower 发表于 2024-9-15 21:34 | 显示全部楼层
如果结构体中的数据不应该被修改,可以使用const关键字来定义只读的结构体。
l63t89 发表于 2024-9-15 21:50 来自手机 | 显示全部楼层
让数组只有赋值时会改变内部数据
lihuami 发表于 2024-9-16 09:52 | 显示全部楼层
更好的做法是使用extern关键字在头文件中声明,并在一个.c文件中定义它。
l63t89 发表于 2024-9-16 11:16 来自手机 | 显示全部楼层
结构体里有个数组
albertaabbot 发表于 2024-9-16 12:57 | 显示全部楼层
在同一.c文件中,定义结构体类型的全局实例。
cemaj 发表于 2024-9-16 20:35 | 显示全部楼层
如果结构体需要在多个文件或模块之间共享,可以将其声明为extern,这样它就成为了一个全局变量。
uytyu 发表于 2024-9-18 11:22 | 显示全部楼层
为结构体及其成员提供清晰的文档和注释,说明它们的用途和行为。
burgessmaggie 发表于 2024-9-18 16:23 | 显示全部楼层
如果全局变量的声明依赖于其他文件中的定义或声明,需要注意编译顺序。
Stahan 发表于 2024-9-18 19:47 | 显示全部楼层
先初始化一遍吗
modesty3jonah 发表于 2024-9-18 20:39 | 显示全部楼层
尽量将全局变量的作用域限制在最小范围内。
zerorobert 发表于 2024-9-19 08:29 | 显示全部楼层
可以在头文件(.h)中声明结构体的类型。这样做可以使得结构体在多个源文件中可见,便于维护和重用。
maqianqu 发表于 2024-9-19 13:33 | 显示全部楼层
全局变量应该被声明为static以限制其作用域仅限于声明它的文件。
claretttt 发表于 2024-9-21 11:03 | 显示全部楼层
可以在多个源文件中访问这个全局变量,同时保持代码的组织性和可维护性。
uiint 发表于 2024-9-22 11:26 | 显示全部楼层
为了在其他文件中使用这个全局结构体变量,你需要创建一个头文件(例如myfile.h),并在其中声明该变量。使用extern关键字来声明变量,表示它在其他地方定义。
ingramward 发表于 2024-9-22 15:40 | 显示全部楼层
通常的做法是在一个.h头文件中声明结构体类型,并在对应的.c源文件中定义全局变量。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0