che funzione devo richiamare per ottenere la grandezza di un array?
o devo farmi un ciclo che controlla fino a che indice ottiene qualcosa?
mi rispondo da solo: sizeof(nome array)
solo che per i gli array in ram va tranquillo invece per quelli memorizzati come array di string via progmem da il risultato doppio, poco male basta un/2 dopo, però strano...
sizeof ritorna la grandezza di ciò che gli passi.
in teoria sizeof(nomearray) ritorna la grandezza del PUNTATORE all'array
l'array occupa SEMPRE sizeof(tipoarray)*lunghezzaraay dove tipoarray è int, char, struct o quel che vuoi, mentre lunghezzaArray è autoesplicativo. Ricordati che per le stringe devi considerare il carattere finale '\0' quindi lòa lunghezza è sempre +1.
dicevo l'array occupa SEMPRE perchè quello è lo spazio riservato per l'array, anche se poi nn è usato. La parte non usana NON è vuota, ma contiene valori a caso.
Non mi dilungo oltre, se hai bisogno di chiarimenti chiedi