ft_memcmp

jaehlee·2025년 4월 25일

Libft

목록 보기
6/26

1. ft_memcmp란?


s1과 s2를 n바이트만큼 비교하는 함수이다.

2. 함수 프로토타입

int	ft_memcmp(const void *s1, const void *s2, size_t n)

3. 함수구현

#include "libft.h"

int	ft_memcmp(const void *s1, const void *s2, size_t n)
{
	size_t				i;
	const unsigned char	*temp1;
	const unsigned char	*temp2;

	temp1 = (const unsigned char *)s1;
	temp2 = (const unsigned char *)s2;
	i = 0;
	while (i < n)
	{
		if (temp1[i] != temp2[i])
			return (temp1[i] - temp2[i]);
		i++;
	}
	return (0);
}

사용예시

int	main(void)
{
	char a[] = "ABC";
	char b[] = "ABD";

	int res = ft_memcmp(a, b, 3);  // 'C' - 'D' = -1
	printf("%d\n", res);          // 출력: -1
	return 0;
}

s1 > s2: 양수
s1 < s2: 음수
s1 == s2: 0

profile
공부하는 개발자

0개의 댓글