-
C언어 문자열 비교 [strcmp()]Visual Studio/C 기초 2013. 6. 17. 16:58
문자열의 내용이 동일한지 알아보기 위해 두 문자열을 비교해야 합니다.
문자열이 동일하지 않다면 하나의 문자열은 다른 것보다 크거나 혹은 작다는 것. 이렇게 크거나 작은 상태를 결정하는 기준은 각 문자의 ASCII 코드 값입니다.
모든 대문자가 소문자보다 "작다"는 이상하게 생각될 수 있는 한가지 예외 사항을 제외하고 알파벳 순서에 따라 크기가 정해집니다.
대문자의 ASCII 코드의 범위는 65부터 90이고, 소문자의 ASCII 코드의 범위는 97~122이므로 "ZEBRA"는 "apple"보다 작은 것으로 간주됩니다.
strcmp의 함수가 반환하는 값이 0보다 클 경우 : st1이 st2보다 크다.
0일 경우 : st1이 st2와 같다.
0보다 작을 경우 : st1이 st2보다 작다.
#include <stdio.h>
#include <string.h>
#define MAX 80main(){
char st1[MAX], st2[MAX];
int x;while(1)
{
printf("첫번째 단어를 입력해주세요. 빈 칸을 입력하면 종료됩니다 : ");
gets(st1);if(strlen(st1) ==0)
break;printf("두번째 단어를 입력해주세요 : ");
gets(st2);x = strcmp(st1,st2);
printf("함수 strcmp(%s,%s)는 값 %d를 돌려줍니다.\n",st1,st2,x);
}
}'Visual Studio > C 기초' 카테고리의 다른 글
C언어 strchr() (1) 2013.06.25 strncmp() (0) 2013.06.19 strncat() (0) 2013.06.17 C언어 문자열 결합 [strcat()] (0) 2013.06.17 strdup() (0) 2013.06.17