Domanda di: Sig.ra Neri De Santis | Ultimo aggiornamento: 17 agosto 2026 Valutazione: 4.1/5
(61 voti)
In C, un array di stringhe si crea comunemente definendo un array bidimensionale di caratteri (char nome[righe][colonne]), dove la prima dimensione indica il numero di stringhe e la seconda la lunghezza massima di ciascuna, inclusa la terminazione nulla '\0'. Un metodo più efficiente per stringhe di lunghezza variabile è l'uso di un array di puntatori (char *array[]).
La sintassi per dichiarare un array statico di stringhe è la seguente: char array[][N] = { "stringa1", "stringa2", "stringa3", ... }; dove N rappresenta la lunghezza massima di ciascuna stringa.
Avendo la necessità di convertire una stringa con separatori in un array di interni, si possono seguire due strade: una tradizionale (poco elegante) ed una che usa le espressioni lambda. string valore = "1;2;3;4;5;6;7;8;9;10;11;12"; int[] intArray = valore.
Possiamo utilizzare l'istruzione printf tramite la specifica del formato %s. Questa porzione di codice permette di stampare tutta la frase in automatico finché non si troverà il carattere terminatore.
In linguaggio C, possiamo concatenare due stringhe usando la funzione strcat della libreria standard string. h . Questa funzione accetta due puntatori a stringa e concatena la seconda stringa alla fine della prima.