int memcmp(const void *base1, const void *base2, size_t n); 메모리를 비교하는 함수
입력 매개 변수 리스트
base1 비교 대상 데이터가 있는 버퍼
base1 비교 대상 데이터가 있는 버퍼
n 비교할 바이트 수
반환 값
같을 때 0 , base1이 클 때 양수, base2가 클 때 음수
사용 예
//C언어 표준 라이브러리 함수 가이드 //int memcmp(const void *base1, const void *base2, size_t n); 메모리를 비교하는 함수 //Member 데이터가 값이 같은지 비교 #include <string.h> #include <stdio.h> #define MAX_NAMELEN 20 typedef struct { char name[MAX_NAMELEN]; int age; }Member; int main(void) { Member m1={"홍길동",20}; Member m2={"강감찬",27}; Member m3={"홍길동",20}; if(memcmp(&m1,&m2,sizeof(Member))==0)//m1과 m2 주소의 데이터가 같을 때 { printf("m1과 m2는 서로 같습니다.\n"); } else//m1과 m2 주소의 데이터가 다를 때 { printf("m1과 m2는 서로 다릅니다.\n"); } if(memcmp(&m1,&m3,sizeof(Member))==0)//m1과 m3 주소의 데이터가 같을 때 { printf("m1과 m3는 서로 같습니다.\n"); } else//m1과 m3 주소의 데이터가 같을 때 { printf("m1과 m3는 서로 다릅니다.\n"); } return 0; }
출력
m1과 m2는 서로 다릅니다. m1과 m3는 서로 같습니다.