Strcmp (jazyk C): Rozdiel medzi revíziami
		
		
		
		
		
		
		Skočit na navigaci
		Skočit na vyhledávání
		
				
		
		
		
		
		
		
		
	
 (Vytvorená stránka „{{Funkcie jazyka c}} __NOTOC__ ==Funkcia strcmp== <properties> knižnica=string.h  popis=... </properties>“)  | 
				|||
| Riadok 1: | Riadok 1: | ||
{{Funkcie jazyka c}}  | {{Funkcie jazyka c}}  | ||
__NOTOC__  | __NOTOC__  | ||
| − | ==Funkcia   | + | ==Funkcia system==  | 
<properties>  | <properties>  | ||
| − | knižnica=string.h    | + | knižnica=string.h  | 
| − | popis=  | + | popis=Porovná dva textové reťazce.  | 
</properties>  | </properties>  | ||
| + | |||
| + | Úplný funkčný prototyp:  | ||
| + | <source lang="c">  | ||
| + | int strcmp ( const char * str1, const char * str2 );  | ||
| + | </source>  | ||
| + | ==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:  | ||
| + | {| class="wikitable"  | ||
| + | ! 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==  | ||
| + | <source lang="c" line>  | ||
| + | #include <stdio.h>  | ||
| + | #include <string.h>  | ||
| + | |||
| + | int main ()  | ||
| + | {  | ||
| + |   char kluc[] = "jablko";  | ||
| + |   char buffer[80];  | ||
| + |   do {  | ||
| + |      printf ("Uhadnes moje oblubene jedlo? ");  | ||
| + |      fflush (stdout); //vymaže výstup  | ||
| + |      scanf ("%79s",buffer); //načíta textový reťazec s maximálnou dĺžkou 79 znakov  | ||
| + |   } while (strcmp (kluc,buffer) != 0); //Porovná reťazec kluc a reťazec buffer  | ||
| + |   puts ("Spravne!");  | ||
| + |   return 0;  | ||
| + | }  | ||
| + | </source>  | ||
| + | Výstup:  | ||
| + |  Uhadnes moje oblubene ovocie? hruska  | ||
| + |  Uhadnes moje oblubene ovocie? pomaranc  | ||
| + |  Uhadnes moje oblubene ovocie? jablko  | ||
| + |  Spravne!  | ||
Verzia zo dňa a času 15:15, 22. apríl 2020
| <ctype.h> | <limits.h> | <stdio.h> | <stdlib.h> | <math.h> | <string.h> | <time.h> | 
|---|---|---|---|---|---|---|
| 
 isalnum  | 
 printf  | 
 system  | 
Funkcia system
knižnica  | string.h  | 
popis  | Porovná dva textové reťazce.  | 
Úplný funkčný prototyp:
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!