2010-09-08 21 views
7

dizeleri işaretçiyi karşılaştırmak? Yardım edin, acemi @@Nasıl C, iki dizeleri nasıl C

char *str1 = "hello"; 
char *str2 = "world"; 
//compare str1 and str2 ? 
+8

olanlar 'const char *' olmalıdır. // www: – dreamlax

cevap

8

Sen strcmp kullanmak isteyebilirsiniz:

#include <stdio.h> 
#include <string.h> 

int main(int argc, char **argv) 
{ 
    int v; 
    const char *str1 = "hello"; 
    const char *str2 = "world"; 

    v = strcmp(str1, str2); 

    if (v < 0) 
     printf("'%s' is less than '%s'.\n", str1, str2); 
    else if (v == 0) 
     printf("'%s' equals '%s'.\n", str1, str2); 
    else if (v > 0) 
     printf("'%s' is greater than '%s'.\n", str1, str2); 

    return 0; 
} 

Sonuç:

'hello' is less than 'world'. 
+0

1, ama bu sayfaya bağlantı olmaz, kesinlikle C. [POSIX sayfası] (http başlayan birisi için iyi bir fikir değildir onun örnekte korkunç modası geçmiş 'gets' işlevini kullanır .opengroup.org/onlinepubs/000095399/functions/strcmp.html) bir alternatiftir. – dreamlax

+0

@dreamlax: Anlaşıldı :) Sabit ... –

4
if (strcmp(str1, str2) == 0) 
    same