Compartir a través de


Advertencia C6293

Bucle for-de-fined no definido: cuenta hacia abajo desde el mínimo

Comentarios

Esta advertencia indica que un bucle for podría no funcionar según lo previsto. Se produce cuando un bucle hace la cuenta atrás desde un mínimo, pero tiene una condición de terminación mayor.

Una variable de índice firmada o sin signo, junto con un incremento negativo, hará que el bucle cuente negativo hasta que se produzca un desbordamiento, lo que finalizará el bucle.

Nombre del análisis de código: LOOP_INDEX_GOES_NEGATIVE

Ejemplo

El siguiente ejemplo de código genera esta advertencia:

void f( )
{
   signed char i;

   for (i = 0; i < 100; i--)
   {
      // code ...
   }
}

Para corregir esta advertencia, utilice el código siguiente:

void f( )
{
   signed char i;

   for (i = 0; i < 100; i++)
   {
      // code ...
   }
}