Ho una matrice di 3 elementi. Ma voglio solo inizializzarne 2. Lascio vuoto il terzo elemento.Valore degli elementi non inizializzati nella matrice del linguaggio C
unsigned char array[3] = {1,2,};
int main(){
printf("%d",array[2]);
return 0;
}
Il risultato di stampa è 0. L'ho provato su IAR e qualche compilatore online.
Esiste una regola C per il valore del terzo elemento? C'è qualche compilatore che riempie il terzo elemento di 0xFF? (Soprattutto cross compilatore)
Questo in realtà non risponde alla domanda. L'OP voleva sapere se c'è una regola per il valore con cui gli indici non specificati sono inizializzati con (c'è) e ogni compilatore implicitamente li inizializza a 0xFF (nessun compilatore conforme agli standard lo farebbe). –