Cosa sono le stringhe nella programmazione in C?

Cosa Sono Le Stringhe Nella Programmazione In 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 dati testuali nei loro programmi. A differenza di altri linguaggi di programmazione, C non ha un tipo di dati stringa incorporato. Invece, le stringhe vengono create utilizzando matrici di caratteri.

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

Cosa sono le stringhe nella programmazione in C?

Le stringhe sono gli array unidimensionali terminati da nullo \0 carattere. Sono utilizzati per memorizzare 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, memorizzi i dati nel file tipo di carattere.







Come dichiarare le stringhe nella programmazione C?

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



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



char test [ 8 ] = 'Benvenuto' ;

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 ] = { 'IN' , 'È' , 'io' , 'C' , 'O' , 'M' , 'È' , ' \0 ' } ;

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



char test [ ] = { 'IN' , 'È' , 'io' , 'C' , 'O' , 'M' , 'È' , ' \0 ' } ;

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

La rappresentazione in memoria della stringa precedente sarà la seguente:

Indice 0 1 2 3 4 5 6 7
Variabile IN È l C O M È \0

In C, il carattere null viene utilizzato per determinare dove termina 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.

Quello che segue è un codice di programmazione C completo per stampare una stringa.

#include

int principale ( ) {

char test [ 8 ] = { 'IN' , 'È' , 'io' , 'C' , 'O' , 'M' , 'È' , ' \0 ' } ;

printf ( 'L'output è: %s \N ' , test ) ;

ritorno 0 ;

}

Il programma precedente dichiara un test di matrice di caratteri con una dimensione di 8 e lo inizializza con i caratteri 'Benvenuto' , E '\0' . Quindi utilizza il file stampaf() 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 usando il file scanf() funzione e per questo, devi definire la dimensione dell'array di stringhe. Di seguito è riportato un codice di esempio per ricevere input dall'utente:

#include

int principale ( )

{

char nome [ 10 ] ;

printf ( 'Inserisci il nome:' ) ;

scanf ( '%S' , nome ) ;

printf ( 'Il nome inserito è: %s.' , nome ) ;

ritorno 0 ;

}

Il programma precedente richiede all'utente di inserire un nome, lo legge dall'utente utilizzando la funzione scanf() e lo memorizza nel nome dell'array di caratteri. Quindi usa la funzione printf() per stampare il nome inserito.

Produzione

Leggere una stringa o una riga di testo nella programmazione C

Puoi usare il fgets() funzione per leggere le stringhe poiché viene utilizzata per leggere una riga di testo dal flusso di input specificato e memorizzarla in un array di caratteri. Il codice scritto di seguito è un esempio di tale caso:

#include

int principale ( ) {

char linea [ cinquanta ] ;

printf ( 'Inserisci una riga di testo: ' ) ;

fgets ( linea , taglia di ( linea ) , stdin ) ;

printf ( 'Hai inserito: %s' , linea ) ;

ritorno 0 ;

}

Il programma C di cui sopra utilizza il file fgets() funzione per leggere una riga di testo immessa dall'utente dall'input standard e memorizzarla in un array di caratteri denominato line. Quindi, stampa la riga di testo immessa utilizzando la funzione printf().

Produzione

Funzioni di stringa comunemente utilizzate

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

Nome della funzione Finalità della Funzione
strcat(a1,a2); Aggiunge il contenuto della stringa a2 alla fine della stringa a1. Dopo l'operazione, la stringa risultante verrà memorizzata in a1.
strcpy(a1,a2); Questa funzione copia il contenuto della stringa a2 nella stringa a1. Dopo l'operazione, a1 conterrà una copia esatta di a2, incluso il carattere null di terminazione.
strlen(a1); Restituisce la lunghezza della stringa a1, ovvero il numero totale di caratteri presenti nella stringa prima dell'ultimo carattere di terminazione o nullo.
strchr(a1,ch1); Questa funzione sposta il puntatore alla prima occorrenza del carattere ch1 nella stringa a1. Questa funzione restituisce un puntatore null se ch1 non viene trovato nella stringa a1.

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

Conclusione

La stringa è la raccolta della sequenza lineare nei programmi C. Ogni carattere memorizza un byte ed è rappresentato con virgolette doppie. C fornisce la libreria standard e puoi eseguire facilmente compiti complicati tramite le funzioni di stringa. Nella guida sopra, abbiamo discusso diversi modi per la dichiarazione della stringa e l'inizializzazione. Abbiamo anche dimostrato il passaggio della stringa a una funzione con un codice di esempio.