发新帖我要提问
123
返回列表
打印
[STM32F1]

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

[复制链接]
楼主: yangjiaxu
手机看帖
扫描二维码
随时随地手机跟帖
41
mickit| | 2024-9-22 21:32 | 只看该作者 回帖奖励 |倒序浏览
可以使用 static 关键字将全局变量声明为文件级别的静态变量,这样可以避免与其他文件中的同名变量冲突,同时也提高了代码的封装性。

使用特权

评论回复
42
mikewalpole| | 2024-9-23 13:26 | 只看该作者
extern MyStruct globalStruct; // 声明全局结构体变量

使用特权

评论回复
43
earlmax| | 2024-9-23 15:03 | 只看该作者
使用static关键字限制全局变量的作用域,避免命名冲突。

使用特权

评论回复
44
dspmana| | 2024-9-23 20:13 | 只看该作者
为结构体取一个具有描述性的名称,能够清楚地表达该结构体所代表的实体或概念。

使用特权

评论回复
45
一只眠羊| | 2024-9-24 16:10 | 只看该作者
这种一般就需要最初的时候就赋值了

使用特权

评论回复
46
未说出口的像你| | 2024-9-24 19:00 | 只看该作者
其实每次使用的时候,赋值一下就好了

使用特权

评论回复
47
春日负喧| | 2024-9-24 21:00 | 只看该作者
一般可以考虑使用静态变量操作就好了

使用特权

评论回复
48
在曼谷的春| | 2024-9-24 23:00 | 只看该作者
可以选择清零,或者赋值,都是可以的,但是每次使用这个数组都建议清一下

使用特权

评论回复
49
我吃小朋友| | 2024-9-25 02:00 | 只看该作者
在C语言中,全局变量在声明时会被自动初始化为零(对于基本数据类型)或空(对于指针和数组)。如果你希望数组只有在显式赋值时才会改变内部数据,而不是被系统随便赋值,你可以通过使用静态初始化,在声明时直接初始化数组,这样数组在声明时就会被赋予特定的值,之后只有显式赋值才会改变其内容。

使用特权

评论回复
50
月亮一键变蓝| | 2024-9-25 04:00 | 只看该作者
使用const关键字,将数组声明为const,这样数组的内容在初始化后就不能被修改。

使用特权

评论回复
51
失物招領| | 2024-9-25 09:00 | 只看该作者
使用函数进行访问,通过函数来访问和修改数组,这样可以更好地控制数组的修改。

使用特权

评论回复
52
mmbs| | 2024-9-25 11:46 | 只看该作者
通过访问函数来操作全局变量,避免直接访问,这有助于维护和调试。

使用特权

评论回复
53
maudlu| | 2024-9-25 12:03 | 只看该作者
如果全局变量的值在程序运行过程中不会改变,可以使用const关键字将其声明为只读。

使用特权

评论回复
54
plsbackup| | 2024-9-25 12:17 | 只看该作者
使用static关键字初始化全局变量。

使用特权

评论回复
55
uptown| | 2024-9-25 12:28 | 只看该作者
为了保持模块化和封装性,可以提供访问和修改全局结构体变量的函数。

使用特权

评论回复
56
她已醉| | 2024-9-25 13:00 | 只看该作者
你可以确保数组只有在显式赋值时才会改变内部数据,而不是被系统随便赋值。选择哪种方法取决于你的具体需求和编程习惯。

使用特权

评论回复
57
将爱藏于深海| | 2024-9-25 15:00 | 只看该作者
我是比较喜欢每次赋值,这种比较稳妥

使用特权

评论回复
58
单芯多芯| | 2024-9-25 18:09 | 只看该作者
您可以在头文件中定义结构类型。h)供其他源文件参考。

使用特权

评论回复
59
故意相遇| | 2024-9-25 23:00 | 只看该作者
使用const的话,是这个数组不被修改的前提之下

使用特权

评论回复
60
wex1002| | 2024-9-26 19:00 | 只看该作者
如果结构仅在特定范围内使用,请考虑将其声明为静态局部变量

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则