代码:
switch(abc)
{
case i_a:
temp = adc(channel_1);
return temp *(-1);
break; //Line 6
case i_b:
temp1 = adc(channel_2);
return temp1;
break; //Line 11
default:
return 0;
}
第 6 行和第 11 行的中断变得无法到达,因为在中断语句之前有一个 return。
PC Lint 抛出错误“ token “中断”处无法访问代码 Misra 2012 RULE 2.1 。我该如何解决它?
最佳答案
删除break
或重写代码,例如:
switch(abc)
{
case i_a:
temp = adc(channel_1);
temp= temp * -1;
break;
case i_b:
temp = adc(channel_2);
break;
default:
temp= 0;
break;
}
return temp;
关于c - 如何使我的代码符合 MISRA 2012 规则 2.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59085479/