Apprendimento delle stringhe in C

Apprendimento delle stringhe in C
Una stringa è un concetto importante nella lingua C. Una stringa non è altro che un array che contiene solo il valore del tipo di carattere. Quindi possiamo dire indirettamente che la stringa è un array di caratteri. Una sequenza di caratteri terminati a carattere null.

Il codice ASCII del carattere null è 0.

Esempio di programmazione 1

In questa programmazione, proveremo a imparare come viene dichiarata e inizializzata una stringa, quindi stampare tutti i caratteri di quella particolare stringa.

#includere
int main ()

// Dichiarazione e inizializzazione della stringa.
char s [10] = 's', 'a', 'u', 'r', 'a', 'b', 'h', '\ 0';
per (Inti = 0; i<= 7 ; i++ )

printf (" %c", s [i]); // Stampa la stringa

printf ("\ n");
restituzione 0;

Produzione

Nota

Se vogliamo inizializzare la stringa, possiamo scrivere ogni lettera di una parola con è '&' separati e finire con un carattere speciale '\ 0'.

Spiegazione

Qui vogliamo stampare il carattere null, ma non possiamo stampare il carattere null perché non è un carattere stampabile, ma ha un'altra utilità.

Se vogliamo prendere un valore o una stringa dall'utente, allora non sappiamo quante volte il ciclo verrà eseguito, ma quando il ciclo vede che è arrivato "\ 0", capirà che questa è la fine di la stringa.

per (i = 0; s [i]!= '\ 0'; I ++) // Utilizzo del carattere null
printf ("%c", s [i]);

Se non vogliamo stampare ogni carattere di una stringa che usano illoop e desideriamo stampare la stringa totale, allora-

printf (" %s", s); // invece di loop per stampare la stringa

Un'altra funzione può essere utilizzata per stampare la stringa.

pura (s); // [non è richiesto alcun specificatore in formato]
[puts () funzione automatico Modifica la linea]
put (& s [0]);

Produzione

Saurabh

Un altro formato di inizializzazione delle stringhe

char s [10] = “saurabh”

Se non vogliamo inizializzare la stringa al momento della dichiarazione, desideriamo prendere una stringa dall'utente, quindi -

printf ("Invio nome");

1. scanf (" %s", s); // Qui non è necessario utilizzare e firmare .

2. scanf (" %s", %s [0]); // Il significato di due righe sono gli stessi

scanf () ha solo uno svantaggio. Se vogliamo stampare un nome come Avishek Dutta, allora stampa solo Avishek. Perché scanf () è come un delimitatore di separazione. Se lo usiamo, comprende che le informazioni o la stringa sono finite. Ha un'altra forma -

ottiene (s); - prende una stringa dall'utente proprio come scanf ().

Ma stampare la stringa totale - Avishek Dutta.

Esempio di programmazione 2

Questo esempio di programmazione insegnerà come dichiariamo e inizializziamo una stringa con l'aiuto della funzione Malloc ().

#includere
#includere
#includere
int main ()

char *a;
int b;
printf ("Quanti caratteri nella stringa ? ");
scanf ("%d", & b);
a = (char *) malloc (b * sizeof (char)); // Creazione del blocco di stringa
printf ("Inserisci la stringa:");
scanf ("%s", a);
printf ("stringa inserita: %s \ n", a);
libero (a);
restituzione 0;

Produzione

Spiegazione

Qui vogliamo inserire una stringa dall'utente. La stringa viene creata con l'aiuto dell'allocazione della memoria dinamica. Malloc () Crea la stringa e restituisce l'indirizzo della stringa alla variabile a. Ora stampiamo semplicemente la stringa.

Funzione correlata alla stringa

strlen ()

Passando l'indirizzo della stringa e restituisce la lunghezza della stringa. Passando solo un argomento.

strrev ()

Invertire la stringa. Ci vuole solo un argomento che è l'indirizzo della stringa e restituisce la stringa inversa.

strlwr ()

Cambia la lettera maiuscola nella lettera minuscola.

strupr ()

Cambia la lettera minuscola alla lettera maiuscola.

strcpy ()

Per copiare la stringa

strcpy (s "habibpur")

strcmp ()

Possiamo fare di seguito per confrontare la stringa.

strcmp ("amar", "amit")

Restituisce un valore intero che è una corrispondente mancata corrispondenza del carattere ASCII.

strcat ()

Per aggiungere le due corde,

strcat (s, "studente"); s [] = "ciao"

Quindi, è collegato come "ciao studente".

Gestire multipli di stringa:

Char S [3] [10] = “Bhopal“, “Delhi“, “Kanpur“;

[3] significa quante stringa possiamo inserire in questa stringa 2D.

Esempio di programmazione 3

In questa programmazione, stiamo imparando come viene dichiarata e inizializzata la stringa bidimensionale e la sua applicazione.

#includere
int main ()

Char S [3] [10];
printf ("immettere tre stringhe");
per (Inti = 0; i<= 2 ; i++ )

ottiene (& s [i] [0]);

per (Inti = 0; i<= 2 ; i++ )

printf (" %s \ n", s [i]);

restituzione 0;

Produzione

Spiegazione

Come un array, possiamo dichiarare e inizializzare una stringa bidimensionale nella lingua C. Qui dichiariamo una stringa 2D denominata S [3] [10]. All'interno delle parentesi 3 e 10 significa che supponiamo che questa particolare stringa abbia tre righe e ogni riga abbia dieci colonne. Nella stringa, assegniamo i nomi di tre città. Sono Bhopal, Delhi e Kanpur. Questi valori vengono prelevati dall'utente utilizzando la funzione get () attraverso loop. Ora stampiamo semplicemente il nome delle città.

Conclusione

Dalla discussione di cui sopra sulla stringa, abbiamo preso la decisione che la stringa è un concetto potente nella lingua C. String ci fornisce una nuova dimensione per archiviare i valori del tipo di carattere. Attraverso diverse funzioni nella stringa, possiamo gestire diversi tipi di valori di carattere per concaterare, inferiori al capitale, capitale per abbassare, invertire, ecc.