MISRA C Rule­8.3 3675 Rule­8.4 3408

2025-10-22 19:25:00

函数参数声明的类型限定符与之前声明中的不同; 

定义了有外部链接属性的对象,但是之前没有声明它 。

工具/原料

Rule­8.3 3675 Rule­8.4 3408

MISRA C:2012

Rule­8.3 3675

规则与等级对应关系(QAC)

MISRA C Rule­8.3 3675 Rule­8.4 3408

3675 Function parameter declared with type qualification which differs from previous declaration. 

函数参数声明的类型限定符与之前声明中使用的不同。

在ISO:C中这样是允许的,但是会不稳定且没有什么用。

在原型中的参数使用const限定符的操作对于函数调用时的函数接口没有语义上的不同。但是,注意当形参是一个指针,且指针所指向的类型没有使用相同类型的说明符时,代码将会变得更加不稳定。

MISRA C Rule­8.3 3675 Rule­8.4 3408

编程规范修改举例

MISRA C Rule­8.3 3675 Rule­8.4 3408

Rule­8.4 3408

规则与等级对应关系(QAC)

MISRA C Rule­8.3 3675 Rule­8.4 3408

3408 '%s' has external linkage and is being defined without any previous declaration

定义了一个有外部链接 属性的对象或函数,但是之前没有a href="Glossary.html#declaration">声明它。

一个具有外部链接属性的对象,暗示它将被多个 翻译单元 访问。为了确保定义和用法的一致性,通常首先在头文件中声明对象,然后在要定义或使用这个对象的每一个翻译单元中都包含这个头文件。

MISRA C Rule­8.3 3675 Rule­8.4 3408

编程规范修改举例

MISRA C Rule­8.3 3675 Rule­8.4 3408

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢