Array di caratteri.

Un array di caratteri è solo un array di dati di tipo char. Caratteristiche principali: la dimensione massima di un array di stringhe deve essere nota in anticipo e ogni elemento di tale stringa è accessibile tramite parentesi quadre. Qualsiasi testo racchiuso in modo esplicito tra "virgolette" viene trattato dal programma come un array di caratteri. Essendo un array ordinario, una stringa è un puntatore al suo primo elemento (ovvero, il programma sa solo dove inizia la stringa). Le funzioni integrate per lavorare con le stringhe sono guidate dal carattere null, che si trova necessariamente alla fine della stringa. Pertanto, viene determinata la lunghezza della stringa: dall'inizio al carattere nullo. Gli array di caratteri sono un altro modo per lavorare con i dati di testo. Questa opzione ha molte meno opzioni per lavorare con il testo, ma occupa meno spazio di memoria (la libreria String non viene utilizzata) e funziona molto più velocemente. Le stesse regole si applicano a un array di caratteri come per gli array regolari. Considera un esempio in cui dichiariamo array di caratteri in diversi modi:

  • char stringArray[] = {'H', 'e', 'l', 'l', 'o'}; -  dichiara un array e imposta il testo in caratteri. La dimensione sarà calcolata dal compilatore.
  • char stringArray2[] = "Hello!"; - ma anche gli array di stringhe possono essere dichiarati in questo modo.
  • char stringArray3[100] = "Hello!"; - puoi dichiarare un array più grande del testo iniziale. Ci sarà spazio libero per altro testo in futuro.
  • stringArray2[0] = 'h'; - puoi lavorare con elementi di stringhe come con gli array. Ora stringArray2 == "hello!".
A differenza delle stringhe, gli array di caratteri non possono:
  • stringArray += textArray; - non è possibile impilare.
  • textArray = "new text"; - non è possibile assegnare String dopo l'inizializzazione.
  • if (stringArray == stringArray2); - non è possibile confrontare.
Ci sono funzioni speciali per questo.

Un punto importante: qualsiasi "testo tra virgolette" nel codice del programma è un array di caratteri, o meglio const char*: un puntatore, un array e una costante - perché il testo è stato inserito prima della compilazione e non può cambiare mentre il programma è in esecuzione. Un array di caratteri può essere convertito in una stringa, ma non ha nulla a che fare con una stringa stessa. Quando si inizializza un array di caratteri con "testo tra virgolette", viene creato un array con una dimensione di uno in più rispetto al numero di caratteri nel testo: il compilatore aggiunge il carattere nullo NULL alla fine della stringa, grazie al quale vari manipolazioni di stringhe gli strumenti vedranno la lunghezza della stringa: dal primo carattere a NULL.

Crea il tuo sito web gratis! Questo sito è stato creato con Webnode. Crea il tuo sito gratuito oggi stesso! Inizia