C++ Lezione 8: basi degli array
Questa è l'ottava puntata delle mie lezioni, e tratterà gli array. Gli array sono essenzialmente un modo per immagazzinare valori sotto lo stesso nome. Potete fare un array fuori da qualsiasi tipo di dato, incluse le strutture. Per esempio, potete dire
int examplearray[100]; //Questo dichiara un array
Questo creerà un array integer con 100 caselle, o posti dove immagazzinare valori. La sola cosa difficoltosa inizia con il primo numero-indice, cioè, il numero che mettete tra parentesi per accedere alla prima casella è zero, e non uno!
Pensate agli array come a questo:
[][][][][][]
Ogni casella è una casella nell'array, e potete mettere informazioni in ognuna di esse. E' quasi come un gruppo di variabili fianco a fianco.
Cosa potete fare con questi elementi? Diciamo che volete memorizzare una stringa, siccome il C++ non ha un tipo di dato predefinito per le stringhe, in DOS, si può creare un array di caratteri.
Per esempio:
char astring[100];
Vi permetterà di dichiarare un array char di 100 elementi o caselle. Quindi potete riceverli dall'utente, e se l'utente digita una stringa lunga, entrerà tutta nell'array. La cosa buona è che è veramente semplice lavorare con le stringhe in questo modo, e esiste anche un file header chiamato STRING.H. Farò una lezione più avanti sulle funzioni presenti in string.h, ma per ora, concentriamoci sugli array.
L'aspetto più utile degli array sono gli array multidimensionali.
Per esempio:
int twodimensionalarray[8][8];
Immaginate un array multidimensionale:
[][][][][]
[][][][][]
[][][][][]
[][][][][]
[][][][][]
Questo è un grafico di come immagino un array multidimensionale.
Dichiara un array che ha due dimensioni. Immaginatelo come una scacchiera. Potete facilmente usarlo per memorizzare informazioni su alcuni tipi di giochi, o scrivere qualcosa come tic-tac-toe. Per accedervi, tutto quello di cui avete bisogno sono due variabili, una che va nella prima casella, una che va nella casella. Potete anche fare un array a tre dimensioni, sebbene probabilmente non ne avrete bisogno. In effetti, potete fare anche un array a quattrocento dimensioni. E' solo veramente confuso da immaginare.
Ora, gli array vengono trattati fondamentalmente come le altre variabili.
potete modificare i suoi valori mettendo:
arrayname[arrayindexnumber] = qualsiasi;
Troverete tante cose utili da fare con gli array, dal memorizzare informazioni su alcune cose sotto un nome, al fare giochi come tic-tac-toe. Un piccolo consiglio che vi do è di utilizzare un loop for per accedere ad un array.
E' semplice:
#include <iostream.h>
void main()
{
int x, y, anarray[8][8];//dichiara un array come una scacchiera
for(x=0; x<8; x++)
{
for(y=0; y<8; y++)
{
anarray[x][y]=0;//setta tutti gli elementi a zero appena fatto il loop
}
}
for(x=0; x<8;x++)
{
for(y=0; y<8; y++)
{
cout<<"anarray["<<x<<"]["<<y<<"]="<<anarray[x][y]<<" ";//vedrete
}
}
}
Qui potete vedere che il loop lavora bene perché incrementa la variabile al posto vostro, e voi avete bisogno solo di incrementarla di uno. E' facile, e avrete accesso all'array intero; volete usare un loop while?
---
Nota: La mia homepage è http://www.cprogramming.com. La mia email è webmaster@cprogramming.com. Vi prego di mandarmi una email con commenti e/o suggerimenti. Se volete usare questo tutorial nel vostro sito, vi prego di mandarmi una email e dia aggiungere un link a http://www.cprogramming.com.
Grazie :)