본문 바로가기
C언어/C언어 문법

C언어 - strcmp 문자열 비교/c언어 문자열 비교/strcmp예제/자주 쓰이는 문자열 함수 정리

by 공부가싫다가도좋아 2021. 4. 14.
반응형

strcmp - 문자열 비교


strcmp (const char* str1, const char* str2)

str1과 str2를 비교.

 

*

strcmp는 문자열을 아스키코드값으로 변환하여 차례대로 비교.

그러므로, 

str1이 더 크면 양수 반환.

str1과 str2가 같으면 0을 반환.

str1이 더 작으면 음수 반환.

*

예제1) - 반환값

*str1이 더 크면 양수 반환.

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

int main(void){	
	printf("str1이 str2보다 클때\n");
	char str1[30] = "bbb";
	char str2[30] = "aaa";
	printf("\n반환값: %d\n",strcmp(str1,str2));
		
	return 0;
	
	
}

결과


*str1과 str2가 같으면 0을 반환.

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

int main(void){
	
	printf("str1과 str2가 같을때\n");
	char str1[30] = "aaa";
	char str2[30] = "aaa";
	printf("\n반환값: %d\n",strcmp(str1,str2));
	
	return 0;
	
}

결과


*str1이 더 작으면 음수 반환.

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

int main(void){
	
	printf("str1이 str2보다 작을때\n");
	char str1[30] = "aaa";
	char str2[30] = "bbb";
	printf("\n반환값: %d\n",strcmp(str1,str2));
	
	return 0;
	
}

결과


*문자열은 '='으로 비교시, 문자열의 주소값을 비교하게됨.

아래 예제2에서는 str1과 str2의 주소값은 다르므로 different를 출력함. *

예제2)

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

int main(void){
	char str1[30] = "코짜문";
	char str2[30] = "코짜문";
	
	printf(" == 으로 문자열 비교시\n");
	if(str1 == str2){  
	// 문자열을 '=='으로 비교시 주소값을 비교하게됨.  
		printf("same\n");
	} else{
		printf("different\n");
	}
	printf("\n");
	printf(" strcmp로 문자열 비교시\n");
	if(strcmp(str1,str2)==0){ //strcmp이용 
		printf("same\n");
	}else{
		printf("different\n");
	}
	
	return 0;
	
}

결과

 


strcmp외의 자주 쓰이는 문자열 함수

strcpy를 알고싶다면 - 

2021.04.12 - [C언어/C언어 문법] - C언어 - strcpy 문자열 복사하기/c언어 문자열 복사/strcpy예제/자주 쓰이는 문자열 함수 정리

 

C언어 - strcpy 문자열 복사하기/c언어 문자열 복사/strcpy예제/자주 쓰이는 문자열 함수 정리

strcpy - 문자열 복사 함수 strcpy ( char* str1, const char* str2) str2를 str1에 대입. 예제) 코드 #include #include //문자열을 다룰 수 있는 함수들이 포함된 헤더파일. int main() { char str1[30]="코짜문..

eunhee-programming.tistory.com

strcat를 알고싶다면 -

2021.04.13 - [C언어/C언어 문법] - C언어 - strcat 문자열 연결/c언어 문자열 이어붙이기/strcat예제/자주 쓰이는 문자열 함수 정리

 

C언어 - strcat 문자열 연결/c언어 문자열 이어붙이기/strcat예제/자주 쓰이는 문자열 함수 정리

strcat -문자열 이어붙이기 strcat ( char* str1, const char* str2) str2를 str1뒤에 이어붙임. 예제) 코드 #include #include int main(void){ char str1[30] = "코짜문"; char str2[30] = "코드짜는 문과녀 - "..

eunhee-programming.tistory.com

 

반응형

댓글