C99 Estrutura Inicializadores Designados e outros valores
Estou ciente de que no C99 você pode inicializar membros da estrutura usando o nome do membro da seguinte maneira:
struct myStruct
{
int i;
char c;
float f;
};
Então, o seguinte é válido:
struct myStruct m = {.f = 10.11, .i = 5, .c = 'a'};
Diz-se também que membros não inicializados serão definidos como0
. assim
struct myStruct m = {.f = 10.11, .c = 'a'};
aquii
será definido como0
Mas, pelo seguinte:
struct myStruct m = {.f = 10.11, .c = 'a', 6};
i
ainda é inicializado como 0. Qual é o motivo se fizermos essa inicialização composta.