Cosa sono le stringhe nella programmazione C?

Cosa sono le stringhe nella programmazione C?
Nel linguaggio di programmazione C, stringhe sono un modo per rappresentare un gruppo di personaggi. Sono essenziali perché consentono ai programmatori di lavorare con i dati testuali nei loro programmi. A differenza di altri linguaggi di programmazione, C non ha un tipo di dati di stringa integrato. Invece, le stringhe vengono create usando array di caratteri.

In questo articolo, spiegheremo quali sono le stringhe in C, come vengono dichiarate e come implementarle nella programmazione C.

Cosa sono le stringhe nella programmazione C?

Le stringhe sono gli array unidimensionali terminati da null \ 0 carattere. Sono usati per archiviare caratteri e testi e ogni carattere nella stringa occupa un byte della memoria. A differenza degli altri linguaggi di programmazione, C non ha il nome del tipo di dati come stringa, invece di questo, si memorizzano i dati in tipo char.

Come dichiarare stringhe nella programmazione C?

Nella programmazione C, è possibile dichiarare una stringa usando i seguenti metodi:

È possibile assegnare una stringa con una dimensione predefinita. Ad esempio, una stringa con dimensioni limite di 8 caratteri dovrebbe essere dichiarata come:

Char Test [8] = "Welcome";

Un altro metodo per assegnare una stringa in C è senza definire la dimensione dell'array:

char test [] = "benvenuto";

Puoi anche assegnare una stringa usando un array di caratteri con una dimensione definita:

char test [8] = 'w', 'e', ​​'l', 'c', 'o', 'm', 'e', ​​'\ 0';

Oppure puoi assegnare una stringa a un array di caratteri inizializzando il carattere per carattere senza una dimensione definita:

char test [] = 'w', 'e', ​​'l', 'c', 'o', 'm', 'e', ​​'\ 0';

IL carattere null "\ 0" rappresenta la fine di una stringa. Per determinare dove finisce la stringa, è importante aggiungere il carattere nullo alla fine di ogni.

La rappresentazione di memoria della stringa sopra sarà la seguente:

Indice 0 1 2 3 4 5 6 7
Variabile W e l C o M e \ 0

In C, il carattere null viene utilizzato per determinare dove sta terminando la stringa. Se il carattere null non è presente, queste funzioni continueranno a elaborare la memoria oltre la fine della stringa, portando potenzialmente a un comportamento imprevisto del codice.

Di seguito è riportato un codice di programmazione C completo per la stampa di una stringa.

#includere
int main ()
char test [8] = 'w', 'e', ​​'l', 'c', 'o', 'm', 'e', ​​'\ 0';
printf ("L'output è: %s \ n", test);
restituzione 0;

Il programma di cui sopra dichiara un test di array di caratteri con una dimensione di 8 e lo inizializza con i caratteri 'Benvenuto', E '\ 0'. Quindi usa il printf () funzione per stampare la stringa memorizzata nel test.

Produzione

Prendi l'input della stringa dall'utente nella programmazione C

Puoi anche prendere la stringa di input da un utente utilizzando il scanf () funzione e per questo, è necessario definire la dimensione dell'array di stringhe. Di seguito è riportato un codice di esempio per prendere input dall'utente:

#includere
int main ()

Nome char [10];
printf ("Invio nome:");
scanf ("%s", nome);
printf ("Il nome immesso è: %s.", nome);
restituzione 0;

Il programma sopra indica l'utente di inserire un nome, lo legge dall'utente utilizzando la funzione scanf () e lo memorizza nel nome dell'array caratteri. Quindi utilizza la funzione printf () per stampare il nome immesso.

Produzione

Leggi una stringa o una riga di testo nella programmazione C

Puoi usare il fgets () funzione per leggere le stringhe in quanto viene utilizzato per leggere una riga di testo dal flusso di input specificato e memorizzarlo in un array di caratteri. Il codice di sotto-scritto è un esempio di tale caso:

#includere
int main ()
Linea del carbone [50];
printf ("Immettere una riga di testo:");
fgets (linea, sizeof (linea), stdin);
printf ("hai inserito: %s", linea);
restituzione 0;

Il programma C sopra indicato utilizza il fgets () funzione per leggere una riga di testo inserita dall'utente dall'ingresso standard e memorizzarlo in un array di caratteri denominato riga. Quindi, stampa la riga di testo immessa utilizzando la funzione printf ().

Produzione

Funzioni di stringa comunemente usate

Le stringhe nella programmazione C supportano varie funzioni che possono essere utilizzate nei programmi per eseguire azioni diverse. Alcune delle funzioni supportate da una stringa in C sono menzionate di seguito:

Nome della funzione Scopo della funzione
strcat (A1, A2); Apprendono il contenuto della stringa A2 alla fine della stringa A1. Dopo l'operazione, la stringa risultante verrà archiviata in A1.
strcpy (A1, A2); Questa funzione copia il contenuto della stringa A2 alla stringa A1. Dopo l'operazione, A1 conterrà una copia esatta di A2, incluso il carattere null terminale.
Strlen (A1); Restituisce la lunghezza della stringa a1, i.e., il numero totale di caratteri situati nella stringa prima dell'ultimo carattere terminale o null.
Strchr (A1, CH1); Questa funzione sposta il puntatore alla prima occorrenza del carattere CH1 nella stringa A1. Questa funzione restituisce un puntatore nullo se CH1 non si trova nella stringa A1.

Nota: C fornisce una libreria standard chiamata che fornisce varie funzioni per lavorare con stringhe in C. Queste funzioni includono operazioni come la copia di stringhe, stringhe concatenenti e altro ancora.

Conclusione

La stringa è la raccolta della sequenza lineare nei programmi C. Ogni personaggio memorizza un byte ed è rappresentato con segni di doppia citazione. C fornisce la libreria standard e puoi eseguire compiti complicati facilmente attraverso funzioni di stringa. Nella guida di cui sopra, abbiamo discusso di diversi modi per la dichiarazione della stringa e dell'inizializzazione. Abbiamo anche dimostrato il passaggio della stringa in una funzione con un codice di esempio.