본문 바로가기

카테고리 없음

[C++] 메모리 관리 함수 - memcmp()

void main(void)
{
	char str1[10];
	char str2[10];
	cout << "입력해 주세요 : ";
	cin >> str1;
	cout << "입력해 주세요 : ";
	cin >> str2;

	if(memcmp(str1, str2, strlen(str1)) == 0)
	{
		cout << "두 개의 문장은 일치합니다." << endl;
	}
	else
	{
		cout << "두 개의 문장이 일치하지 않습니다." << endl;
	}
}

프로그램 실행화면


int memcmp(const void *buf1,const void *buf2,size_t count);


메모리 관리 함수 중 두 곳의 메모리 값이 같은지 다른지 확인해 주는 함수이다. strcmp()함수와 같은 동작을 한다.


메모리는 시작점과 끝지점을 알아야 하기에 그 길이를 꼭 인자로 보내주어야 한다. 따라서 strncmp()함수에 더 가깝다고 할 수 있다.


메모리 관리 함수와 문자열 조작함수의 차이로는 역시 인자의 형에 있다. 메모리 관리 함수는 void형으로 인자를 넘겨주기 때문에 어떤 형이든 실행할 수 있다. 상황에 맞게 사용하면 되겠다.