Strcmp (jazyk C): Rozdiel medzi revíziami
Skočit na navigaci
Skočit na vyhledávání
d (→Príklad) |
|||
(3 medziľahlé úpravy od 2 ďalších používateľov nie sú zobrazené) | |||
Riadok 1: | Riadok 1: | ||
{{Funkcie jazyka c}} | {{Funkcie jazyka c}} | ||
__NOTOC__ | __NOTOC__ | ||
− | ==Funkcia | + | ==Funkcia strcmp== |
<properties> | <properties> | ||
knižnica=string.h | knižnica=string.h | ||
Riadok 7: | Riadok 7: | ||
</properties> | </properties> | ||
− | Úplný funkčný prototyp: | + | Úplný funkčný prototyp<ref>https://www.tutorialspoint.com/c_standard_library/c_function_strcmp.htm</ref>: |
<source lang="c"> | <source lang="c"> | ||
int strcmp ( const char * str1, const char * str2 ); | int strcmp ( const char * str1, const char * str2 ); | ||
</source> | </source> | ||
+ | |||
==Podrobný popis funkcie== | ==Podrobný popis funkcie== | ||
Táto funkcia začne porovnávať od prvého znaku oboch reťazcov. Ak sú si navzájom rovnaké, pokračuje s nasledujúcimi pármi, až kým sa znaky nebudú líšiť alebo kým sa nedosiahne koncový nulový znak. Táto funkcia vykoná binárne porovnanie znakov. | Táto funkcia začne porovnávať od prvého znaku oboch reťazcov. Ak sú si navzájom rovnaké, pokračuje s nasledujúcimi pármi, až kým sa znaky nebudú líšiť alebo kým sa nedosiahne koncový nulový znak. Táto funkcia vykoná binárne porovnanie znakov. | ||
Riadok 49: | Riadok 50: | ||
} | } | ||
</source> | </source> | ||
− | Výstup: | + | ''Výstup:'' |
Uhadnes moje oblubene ovocie? hruska | Uhadnes moje oblubene ovocie? hruska | ||
Uhadnes moje oblubene ovocie? pomaranc | Uhadnes moje oblubene ovocie? pomaranc | ||
Uhadnes moje oblubene ovocie? jablko | Uhadnes moje oblubene ovocie? jablko | ||
Spravne! | Spravne! | ||
+ | |||
+ | ==Referencie== |
Aktuálna revízia z 23:26, 19. máj 2020
<ctype.h> | <limits.h> | <stdio.h> | <stdlib.h> | <math.h> | <string.h> | <time.h> |
---|---|---|---|---|---|---|
isalnum |
printf |
system |
Funkcia strcmp
knižnica | string.h |
popis | Porovná dva textové reťazce. |
Úplný funkčný prototyp[1]:
int strcmp ( const char * str1, const char * str2 );
Podrobný popis funkcie
Táto funkcia začne porovnávať od prvého znaku oboch reťazcov. Ak sú si navzájom rovnaké, pokračuje s nasledujúcimi pármi, až kým sa znaky nebudú líšiť alebo kým sa nedosiahne koncový nulový znak. Táto funkcia vykoná binárne porovnanie znakov.
Parametre
- str1
- Prvý textový reťazec, ktorý budeme porovnávať s druhým textovým reťazcom.
- str2
- Druhý textový reťazec.
Návratová hodnota
Vráti integrálnu hodnotu označujúcu vzťah medzi reťazcami:
Vrátená hodnota | Indikuje |
---|---|
<0 | Prvý znak, ktorý sa nezhoduje, má v ptr1 nižšiu hodnotu ako v ptr2. |
0 | Obsah oboch reťazcov je rovnaký. |
>0 | Prvý znak, ktorý sa nezhoduje, má v ptr1 väčšiu hodnotu ako v ptr2. |
Príklad
1 #include <stdio.h>
2 #include <string.h>
3
4 int main ()
5 {
6 char kluc[] = "jablko";
7 char buffer[80];
8 do {
9 printf ("Uhadnes moje oblubene jedlo? ");
10 fflush (stdout); //vymaže výstup
11 scanf ("%79s",buffer); //načíta textový reťazec s maximálnou dĺžkou 79 znakov
12 } while (strcmp (kluc,buffer) != 0); //Porovná reťazec kluc a reťazec buffer
13 puts ("Spravne!");
14 return 0;
15 }
Výstup:
Uhadnes moje oblubene ovocie? hruska Uhadnes moje oblubene ovocie? pomaranc Uhadnes moje oblubene ovocie? jablko Spravne!