Hur man jämför två strängar i C -programmering: 10 steg

Innehållsförteckning:

Hur man jämför två strängar i C -programmering: 10 steg
Hur man jämför två strängar i C -programmering: 10 steg

Video: Hur man jämför två strängar i C -programmering: 10 steg

Video: Hur man jämför två strängar i C -programmering: 10 steg
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, April
Anonim

Att jämföra stränglängd är en vanlig funktion i C -programmering, eftersom den låter dig se vilken sträng som innehåller fler tecken. Detta är mycket användbart för att sortera data. Att jämföra strängar kräver en speciell funktion; använd inte! = eller ==.

Steg

Jämför två strängar i C -programmeringssteg 1
Jämför två strängar i C -programmeringssteg 1

Steg 1. Det finns två funktioner som gör att du kan jämföra strängar i C

Båda dessa funktioner ingår i biblioteket.

  • strcmp () - Denna funktion jämför två strängar och returnerar den jämförande skillnaden i antalet tecken.
  • strncmp () - Detta är detsamma som strcmp (), förutom att det jämför de första n -tecknen. Det anses vara säkrare eftersom det hjälper till att förhindra kraschar från överflöd.
Jämför två strängar i C -programmeringssteg 2
Jämför två strängar i C -programmeringssteg 2

Steg 2. Starta programmet med dina nödvändiga bibliotek

Du vill ha både och och bibliotek, tillsammans med alla andra du kan behöva för ditt specifika program.

#inkludera #inkludera

Jämför två strängar i C -programmeringssteg 3
Jämför två strängar i C -programmeringssteg 3

Steg 3. Starta en

int fungera.

Detta är det enklaste sättet att lära sig denna funktion, eftersom det kommer att returnera ett heltal som jämför längden på de två strängarna.

#include #include int main () {}

Jämför två strängar i C -programmeringssteg 4
Jämför två strängar i C -programmeringssteg 4

Steg 4. Definiera de två strängar du vill jämföra

I det här exemplet jämför vi två fördefinierade char strängar. Du kommer också att vilja definiera returvärdet som ett heltal.

#include #include int main () {char *str1 = "apple"; char *str2 = "orange"; int ret; }

Jämför två strängar i C -programmeringssteg 5
Jämför två strängar i C -programmeringssteg 5

Steg 5. Lägg till jämförelsesfunktionen

Nu när du har definierat dina två strängar kan du lägga till jämförelsefunktionen. Vi kommer att använda strncmp (), så vi måste se till att antalet tecken som ska mätas är inställt i funktionen.

#include #include int main () {char *str1 = "apple"; char *str2 = "orange"; int ret; ret = strncmp (str1, str2, 6); / *Detta jämför de två strängarna upp till 6 tecken långa */}

Jämför två strängar i C -programmeringssteg 6
Jämför två strängar i C -programmeringssteg 6

Steg 6. Använd en

Om annat uttalande för att utföra jämförelsen.

Nu när du har funktionen på plats kan du använda en If … Else -sats för att visa vilken sträng som är längre. strncmp () returnerar 0 om strängarna är lika långa, ett positivt tal om str1 är större och ett negativt tal om str2 är större.

#include #include int main () {char *str1 = "apple"; char *str2 = "orange"; int ret; ret = strncmp (str1, str2, 6); om (ret> 0) {printf ("str1 är längre"); } annat om (ret <0) {printf ("str2 är längre"); } else {printf ("De två strängarna är lika"); } retur (0); }

Rekommenderad: