Learning GNU C: gli array | OTHER chapters | |||
Un array è un tipo di dato che contiene più variabili dello stesso tipo. Ad ogni elemento dell'array viene assegnato un numero, attraverso il quale è possibile accedere al valore dell'elemento. Per un array di 100 elementi, il primo elemento è 0 ( zero ), mentre l'ultimo è 99. Questo accesso per indici rende molto utile eseguire un loop su tutti gli elementi di un array.
Dichiarare un array è come dichiarare una qualsiasi altra variabile, con la sola differenza che la dichiarazione di un array chiede di specificare le dimensioni dell'array. Le dimensioni ( numero degli elementi ) sono rappresentate da un numero integer, scritto tra parentesi quadre, subito dopo il nome dell'array ( identificatore ):
NOTA: è vostro compito assicurarvi di non tentare di accedere ad un elemento inesistente di un array, per esempio l'elemento 11 di un array di 10 elementi. Tentare di accedere ad un valore che si trovi oltre alla fine di un array potrebbe causare il crash del vostro programma o, peggio, restituire un dato qualsiasi senza informarvi dell'errore intervenuto. Nel nostro ultimo esempio, abbiamo inizializzato l'array
L'array del nostro ultimo esempio era un array ad una dimensione. Gli array possono avere più di una dimensione. Gli array di array vengono definiti array multidimensionali. Gli array multidimensionali sono molto simili agli array standard, con la sola eccezione che hanno più gruppi di parentesi quadre, dopo il nome dell'array ( identifier ). Un array a due dimensioni può essere pensato come una griglia di righe e colonne.
Se compilate ed eseguite questo programma, otterrete una tabella di numeri, come questa:
L'array appena visto ha due dimensioni e viene definito "matrice" ( doubly subscripted array ). GCC permette array fino a 29 dimensioni, anche se, oggi, è molto raro vedere array con più di tre dimensioni. L'array multidimensionale creato dal nostro ultimo esempio è l'array sarà composto da 7 elementi (
Una stringa di testo, in C, è rappresentato da un certo numero di variabili di tipo La dimensione dell'array comprende sempre anche il carattere NULL finale ( Il linguaggio C mette a disposizione solo i tipi di dato di base, quelli più usati, mentre altri linguaggi di programmazione offrono una mole di tipi di dato molto più vasta. Ma, questa è pura convenienza. Il modo in cui C gestisce le stringhe di testo è un buon esempio di tutto ciò. Ci saranno momenti in cui penserete di aver bisogno di un qualche altro tipo di dato, per memorizzare un tipo di dato più complesso. C vi permette di definirne uno tutto vostro. In C è possibile creare un nuovo tipo di dato personalizzato. Per esempio: "Person". "Person" può contenere un tipo di dato
Questo codice crea una variabile, di tipo
Un esempio renderà più chiaro tutto questo. Useremo la precedente definizione della variabile
Se compilate ed eseguite questo codice, il programma restituirà:
C supporta anche tipi di dati dinamici, variabili che possono essere un integer (
|
||||
Learning GNU C: gli array | Disclaimer: this link points to content provided by other sites. |