:在多个任务中写入的变量可能会意外更改其值。这可能会导致混乱的情况。如果同时将变量写入两个任务 [...] 。例如,使用信号量来确保访问不会导致不一致的状态
:在极少数情况下,将指向常量的指针传递给函数可能很有用。但是,您必须确保此函数不会更改传输的值 [...] 检测操作员所在的代码行 ADR 应用于一个常数
检测超出范围的子范围类型违规。编译器已经检查了分配的文字 [...] :如果使用子范围类型,则确保不退出此子范围。编译器仅针对常量分配检查这些类型的子范围违规
,那么您稍后将无法识别返回值是否被遗忘或者是否实际上不需要。 例外:如果返回值与调用无关,那么您应该对此进行记录并省略赋值 [...] 理由:当函数或方法返回返回值时,您也应该对其进行评估
检测只有一个元素的数组 理由:一个元素的数组可以被一个基本类型的变量替换 [...] ,并且如果长度仅为1则不必更改。这种情况应该相应地记录下来 [...] 。 例外:数组的长度通常由常量确定,并且是程序的参数
SA0023:复杂的返回值 确定无法使用处理器的简单注册表副本返回的复杂返回值 [...] :这是一个性能警告。如果函数、方法或属性的结果返回较大的值 [...] VAR_IN_OUT 到一个函数或方法并将其填充到该函数或方法中
); ,这可能会导致意外的情况,最好使用类型化文字来提供独特的说明 [...] 标识属于操作一部分的无类型文字 理由 [...] : SA0024:找到非类型化文字 本节内容如下 :
。如果不强制使用限定变量名,则可以在扩展程序时插入附加枚举 [...] (参见下面的示例:“red”)。这将导致对这段代码的访问不明确。 在每种情况下,我们建议仅使用带有编译指示的枚举
检测未使用足够字符串长度的字符串分配和字符串初始化 理由:当分配不同长度的字符串时,字符串可能会被截断。这可能会产生意想不到的结果。 重要性
,它们可能会导致错误。定义并遵循命名约定以避免出现此类情况。 检测到以下情况: 枚举的名称与应用程序或集成库中的另一个枚举的名称相同。 变量的名称与应用程序或集成库中的另一个对象的名称相同