ft_memcmp.c - chanhl22/libft GitHub Wiki

  1 /* ************************************************************************** */
  2 /*                                                                            */
  3 /*                                                        :::      ::::::::   */
  4 /*   ft_memcmp.c                                        :+:      :+:    :+:   */
  5 /*                                                    +:+ +:+         +:+     */
  6 /*   By: chanhlee <[email protected].>       +#+  +:+       +#+        */
  7 /*                                                +#+#+#+#+#+   +#+           */
  8 /*   Created: 2021/01/16 16:00:18 by chanhlee          #+#    #+#             */
  9 /*   Updated: 2021/01/16 16:00:22 by chanhlee         ###   ########.fr       */
 10 /*                                                                            */
 11 /* ************************************************************************** */
 12 
 13 int ft_memcmp(const void *ptr1, const void *ptr2, size_t n)
 14 {
 15     unsigned char   *prt_srt1;
 16     unsigned char   *prt_str2;
 17     size_t          i;
 18 
 19     ptr_str1 = (unsigned char*)ptr1;
 20     ptr_srt2 = (unsigned char*)ptr2;
 21     i = 0;
 22     while (i < n) //n만큼 μ „λΆ€ 비ꡐ함
 23     {
 24         if (ptr_str1[i] != ptr_str2[i])  //λ§Œμ•½μ— 값이 κ°™μ§€ μ•Šλ‹€λ©΄
 25             return (ptr_str1[i] - ptr_str2[i]); //str1μ—μ„œ str2λ₯Ό λΊ€ 값을 λ°˜ν™˜ν•œλ‹€. str1이 크면 μ–‘μˆ˜ μž‘μœΌλ©΄ 음수
 26         i++;
 27     }
 28     return (0); //λ™μΌν•˜λ‹€λ©΄ 0이 λ°˜ν™˜λœλ‹€.
 29 }