Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La declaración local de 'variable' oculta la declaración del mismo nombre en el ámbito externo. Información adicional: vea la declaración anterior en "location".
Comentarios
Esta advertencia indica que dos declaraciones tienen el mismo nombre en el ámbito local. La declaración del ámbito interno oculta el nombre en el ámbito externo. Cualquier uso previsto de la declaración de ámbito exterior dará como resultado el uso de la declaración local.
Nombre de análisis de código: LOCALDECLHIDESLOCAL
Ejemplo
El código siguiente genera esta advertencia:
#include <stdlib.h>
#define UPPER_LIMIT 256
int DoSomething( );
int f( )
{
int i = DoSomething( );
if (i > UPPER_LIMIT)
{
int i;
i = rand( );
}
return i;
}
Para corregir esta advertencia, use otro nombre de variable como se muestra en el código siguiente:
#include <stdlib.h>
#define UPPER_LIMIT 256
int DoSomething( );
int f ( )
{
int i = DoSomething( );
if (i > UPPER_LIMIT)
{
int j = rand( );
return j;
}
else
{
return i;
}
}
Esta advertencia solo identifica una superposición de ámbito.