Di solito quando si inizializza un array, ci sarebbe probabilmente fare:È ok avere elementi in eccesso nell'inizializzatore di array?
int arr[] = {1, 2, 3, 4, 5};
Ma è ok per limitare esplicitamente la lunghezza della matrice, come di seguito? :
int arr[3] = {1, 2, 3, 4, 5};
Nonostante alcuni avvisi dal compilatore, l'eseguibile non sembra avere alcun problema.
Ma perché farlo anche – aaronman
Di solito è una buona idea prestare attenzione agli avvisi. Ma il compilatore è abbastanza gentile da ignorare le tue divagazioni su elementi extra. Tuttavia ritengo che questa sia una programmazione sciatta. –
Qual è la motivazione per fare è? Non vedo alcun uso pratico per questo, perché è importante? –