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

[复制链接]
4401|66
uiint 发表于 2024-9-22 11:26 | 显示全部楼层
为了在其他文件中使用这个全局结构体变量,你需要创建一个头文件(例如myfile.h),并在其中声明该变量。使用extern关键字来声明变量,表示它在其他地方定义。
ingramward 发表于 2024-9-22 15:40 | 显示全部楼层
通常的做法是在一个.h头文件中声明结构体类型,并在对应的.c源文件中定义全局变量。
mickit 发表于 2024-9-22 21:32 | 显示全部楼层
可以使用 static 关键字将全局变量声明为文件级别的静态变量,这样可以避免与其他文件中的同名变量冲突,同时也提高了代码的封装性。
mikewalpole 发表于 2024-9-23 13:26 | 显示全部楼层
extern MyStruct globalStruct; // 声明全局结构体变量
earlmax 发表于 2024-9-23 15:03 | 显示全部楼层
使用static关键字限制全局变量的作用域,避免命名冲突。
dspmana 发表于 2024-9-23 20:13 | 显示全部楼层
为结构体取一个具有描述性的名称,能够清楚地表达该结构体所代表的实体或概念。
一只眠羊 发表于 2024-9-24 16:10 | 显示全部楼层
这种一般就需要最初的时候就赋值了
未说出口的像你 发表于 2024-9-24 19:00 | 显示全部楼层
其实每次使用的时候,赋值一下就好了
春日负喧 发表于 2024-9-24 21:00 | 显示全部楼层
一般可以考虑使用静态变量操作就好了
在曼谷的春 发表于 2024-9-24 23:00 | 显示全部楼层
可以选择清零,或者赋值,都是可以的,但是每次使用这个数组都建议清一下
我吃小朋友 发表于 2024-9-25 02:00 | 显示全部楼层
在C语言中,全局变量在声明时会被自动初始化为零(对于基本数据类型)或空(对于指针和数组)。如果你希望数组只有在显式赋值时才会改变内部数据,而不是被系统随便赋值,你可以通过使用静态初始化,在声明时直接初始化数组,这样数组在声明时就会被赋予特定的值,之后只有显式赋值才会改变其内容。
月亮一键变蓝 发表于 2024-9-25 04:00 | 显示全部楼层
使用const关键字,将数组声明为const,这样数组的内容在初始化后就不能被修改。
失物招領 发表于 2024-9-25 09:00 | 显示全部楼层
使用函数进行访问,通过函数来访问和修改数组,这样可以更好地控制数组的修改。
mmbs 发表于 2024-9-25 11:46 | 显示全部楼层
通过访问函数来操作全局变量,避免直接访问,这有助于维护和调试。
maudlu 发表于 2024-9-25 12:03 | 显示全部楼层
如果全局变量的值在程序运行过程中不会改变,可以使用const关键字将其声明为只读。
plsbackup 发表于 2024-9-25 12:17 | 显示全部楼层
使用static关键字初始化全局变量。
uptown 发表于 2024-9-25 12:28 | 显示全部楼层
为了保持模块化和封装性,可以提供访问和修改全局结构体变量的函数。
她已醉 发表于 2024-9-25 13:00 | 显示全部楼层
你可以确保数组只有在显式赋值时才会改变内部数据,而不是被系统随便赋值。选择哪种方法取决于你的具体需求和编程习惯。
将爱藏于深海 发表于 2024-9-25 15:00 | 显示全部楼层
我是比较喜欢每次赋值,这种比较稳妥
单芯多芯 发表于 2024-9-25 18:09 | 显示全部楼层
您可以在头文件中定义结构类型。h)供其他源文件参考。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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