Come Confrontare due Stringhe nel Linguaggio C

La comparazione fra stringhe è una delle funzionalità più utilizzate quando si programma utilizzando il linguaggio C. Tale funzione permette di capire se due stringhe sono uguali o quale delle due sia la più lunga. Nel caso si debba ordinare un insieme di dati, la comparazione fra stringhe si rivela uno strumento molto utile. Per confrontare due stringhe si deve utilizzare una funzione speciale, non ci si può limitare all'uso degli operatori di confronto != o ==.

Passaggi

  1. 1
    In C, esistono due funzioni che permettono di comparare due stringhe. Entrambe sono incluse nella libreria standard <string.h>.
  2. 2
    Inizia il programma includendo le librerie di cui hai bisogno. Includi quindi le librerie <stdio.h> e <string.h> e qualsiasi altra libreria aggiuntiva, in base al programma che desideri creare.
  3. 3
    Inizia il programma dichiarando una funzione .int. Dato che dovrà restituire un valore intero determinato dal risultato del confronto delle due stringhe in oggetto, dichiara una funzione di questo tipo. Questo è il modo più semplice per imparare a usare la comparazione fra stringhe.
  4. 4
    Dichiara le due stringhe che desideri confrontare. In questo esempio eseguiremo il confronto di due stringhe predefinite di tipo char. Dovrai altresì dichiarare una variabile di tipo int che conterrà il valore da restituire.[1]
  5. 5
    Inserisci la funzione di confronto. Avendo a disposizione le due stringhe da comparare, ora puoi richiamare la funzione che effettuerà il confronto. In questo caso useremo la funzione strncmp(), pertanto dovremo specificare anche il numero di caratteri che andranno confrontati.
  6. 6
    Utilizza una struttura .If...Else per eseguire la comparazione. Adesso, dopo aver richiamato la funzione strncmp, puoi utilizzare una struttura If...Else per valutare il risultato e visualizzare a video quale delle due stringhe è la più lunga. Se le due stringhe hanno la medesima lunghezza, la funzione strncmp() restituisce il valore 0; restituisce invece un valore intero positivo se la stringa str1 risulta la più lunga. Infine restituisce un valore intero negativo se la stringa str2 è più lunga della prima.

Avvertenze

  • Ricorda che se le stringhe sono uguali, il valore di ritorno della funzione è 0. Ciò potrebbe confonderti perché lo 0 in C corrisponde anche al valore "FALSE".

Informazioni sull'Articolo

wikiHow è una "wiki"; questo significa che molti dei nostri articoli sono il risultato della collaborazione di più autori. Per creare questo articolo, 19 persone, alcune in forma anonima, hanno collaborato apportando nel tempo delle modifiche per migliorarlo.

Categorie: Programmazione

In altre lingue:

English: Compare Two Strings in C Programming, Español: comparar dos cadenas en programación C, Русский: сравнить две строки на языке программирования C, Português: Comparar Duas Strings na Linguagem C, Deutsch: Bei der Programmierung in C zwei Zeichenketten vergleichen, Français: deux chaînes de caractères en langage C, Bahasa Indonesia: Membandingkan Dua String dalam Pemrograman C, Nederlands: Twee tekenreeksen vergelijken in de programmeertaal C

Questa pagina è stata letta 37 204 volte.
Hai trovato utile questo articolo?