Анализатор обнаружил потенциально возможную ошибку, связанную с тем, что в блоке оператора 'switch' первым оператором не является оператор 'case'. Это приводит к тому, что фрагмент кода никогда не получит управление.
Рассмотрим пример:
char B = '0'; int I; ... switch(I) { B = '1'; break; case 2: B = '2'; break; default: B = '3'; break; }
Присваивание "B = '1';" никогда не будет выполнено. Корректный вариант кода:
switch(I) { case 1: B = '1'; break; case 2: B = '2'; break; default: B = '3'; break; }
Данная диагностика классифицируется как:
|
Взгляните на примеры ошибок, обнаруженных с помощью диагностики V622. |