Compartir a través de


Advertencia del compilador (nivel 4) C4221

se ha usado una extensión no estándar: 'identifier': no se puede inicializar con la dirección de una variable automática

Observaciones

Con las extensiones predeterminadas de Microsoft (/Ze) puede inicializar un tipo agregado (matriz, struct o union) con la dirección de una variable local (automática).

Ejemplo

En el siguiente ejemplo se genera C4221.

// C4221.c
// compile with: /W4
struct S
{
   int *i;
};

void func()
{
   int j;
   struct S s1 = { &j };   // C4221
}

int main()
{
}

Estas inicializaciones no son válidas con compatibilidad ANSI (/Za).