SEMICOL 检查器会查找含错放分号的实例。分析程序在某些情况下可能无法识别放错位置的分号,因此 Klocwork 会标记与 if、for 或 while 语句位于同一行中的分号。
分号放错位置通常是由编程人员的错误造成的,这可能导致非预期的程序行为。
1 2 3 4 5 6 void foo(){ for (i=0;i<10;i++); { do_this(); } }
void foo(){ for (i=0;i<10;i++); { do_this(); } }
Klocwork 标记了第 2 行,因为此行可能存在放错位置的分号。
应用程序安全培训材料由 Secure Code Warrior 提供。