1202_MISRA_C规范学习笔记_Rule 8.11_Rule_8.12

本文探讨了C语言编程中关于静态存储类说明符的使用,强调了限制全局变量和函数的访问以及缩小作用域的重要性。同时,讲解了数组定义与声明的技巧,包括指定和推导数组大小的方法,这些都可能成为问题的来源。通过理解并遵循这些最佳实践,可以提高代码质量并减少潜在错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    全部学习汇总: https://github.com/GreyZhang/misra_c_hacking

    这一次,看两条规则。

    具有内部链接的对象和函数的定义和声明中应使用静态存储类说明符。

    这一条其实是跟前面看过的几条规则是有一定关系的,比较好的实践方式就是要保证这样的编码习惯:1,如非必须尽量不要定义可以全局访问的变量、常量以及函数; 2,尽量缩小各种变量、常量或者函数的作用域。

    关于上面两条习惯的保持,在实践中有很多内容是跟static的使用方法有一定的相关度的。

    这一条是针对数组的定义以及声明的。数组的定义可以采用指明数组元素个数的方式定义和声明,也可以在定义的时候不指定数组大小但是显式进行数组元素的定义,这样可以由编译器推导出数组的具体大小。很多时候,通过一个指针声明或者一个与原来的数据类型不相同的数据类型声明的数组都可以访问实际数组的元素。这是C语言中一些比较有技巧的处理方式,但是很多时候这也是问题产生的根源点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值