Alcuni codice esempio per avviare la domanda:annodare una matrice di dimensione fissa senza definire la sua dimensione in C
#define FOO_COUNT 5
static const char *foo[] = {
"123",
"456",
"789",
"987",
"654"
};
Il modo in cui questo sarebbe normalmente iterati, come per un esempio, è la seguente:
int i = FOO_COUNT;
while (--i >= 0) {
printf("%s\n", foo[i]);
Esiste comunque la possibilità di fare quanto sopra senza avere esplicitamente il conteggio umano numero 5? In futuro potrei aggiungere/rimuovere elementi e dimenticare di aggiornare la dimensione dell'array, rompendo così la mia app.
sarebbe questo ancora funzionare se i puntatori di caratteri in foo indicavano stringhe di caratteri di dimensioni variabili? – randombits
sì (15 limite char) –
quindi se ogni elemento supera i 15 caratteri, questo controllo non riesce? probabilmente meglio usare la sentinella NULL allora? grazie ancora – randombits