strcmp strncmp stricmp strnicmp (문자열 비교) C 함수 레퍼런스

|
                        

strcmp

원형 int strcmp(const char *s1, const char *s2)

헤더파일 string.h

두 개의 문자열의 대소를 비교한다.

s1<s2 음수 s1=s2 0  s1>s2 양수 리턴


#include <stdio.h>

#include <string.h>


void main()

{

int result,i;

char *str[2];


str[0]="new york";

str[1]="NEW YORK";


result = strcmp(str[0],str[1]);


printf("%s %c %s\n\n", str[0], result==0?'=':(result>0?'>':'<'), str[1]);


for(i=0;i<8;i++)

{

printf("%c : %d, %c : %d\n", str[0][i], str[0][i], str[1][i], str[1][i]);

}

}





strncmp

원형 int strncmp(const char *s1, const char *s2, size_t maxlen)

헤더파일 string.h

maxlen개의 문자열의 대소를 비교한다.

s1<s2 음수 s1=s2 0  s1>s2 양수 리턴


#include <stdio.h>

#include <string.h>


void main()

{

char *str1 = "1234567890";

char *str2 = "1234512345";

int result;


result=strncmp(str1,str2,5);


printf("%s %c %s\n\n",str1,result==0?'=':(result>0?'>':'<'), str2);

}




stricmp

원형 int stricmp(const char *s1, const char *s2)

헤더파일 string.h

문자열의 대소를 비교한다. 대문자 소문자를 구별하지 않는다.

s1<s2 음수 s1=s2 0  s1>s2 양수 리턴


#include <stdio.h>

#include <string.h>


void main()

{

char *str1 = "abcdefgh";

char *str2 = "ABCDEFGH";

int result;


result=stricmp(str1,str2);


printf("%s %c %s\n\n",str1,result==0?'=':(result>0?'>':'<'), str2);

}




strnicmp

원형 int strnicmp(const char *s1, const char *s2, size_t maxlen)

헤더파일 string.h

maxlen개의 문자열의 대소를 비교한다. 대문자 소문자를 구별하지 않는다.

s1<s2 음수 s1=s2 0  s1>s2 양수 리턴


#include <stdio.h>

#include <string.h>


void main()

{

char *str1 = "abcde fgh";

char *str2 = "ABCDE Fkp";

int result;


result=strnicmp(str1,str2,7);


printf("%s %c %s\n\n",str1,result==0?'=':(result>0?'>':'<'), str2);

}






And