틀린 내용이 있다면 댓글 혹은 슬랙 \@jjhang으로 연락드립니다.
<aside> ⚠️ 이 문서는 아직 프로그래밍을 처음 배우는 단계에서, 그래픽을 통해 쉽게 메모리 블럭을 이해하기 위해 쓰여졌습니다.
</aside>
C 프로그래밍 언어를 공부하는 초보자에게 42cursus의 첫 번째 과제인 libft는 중요한 시작입니다.(때로는 지루할 수도 있습니다!) 본과정에 올라온 러너들은 이 과제를 하면서 컴퓨터 과학의 기초를 다지고, 메모리 조작과 함수 구현을 통해 C 프로그래밍 스킬을 향상시키는 기회를 얻을 수 있습니다. 이번 글에서는 libft - Part 1의 일부로, 메모리 복사 함수인 memcpy
와 memmove
를 중심으로 이 함수들의 구현과 메모리 동작 원리에 대해 쉽게 설명하고자 합니다. 초보자들도 이해하기 쉽게 구체적인 내용을 다루어 보겠습니다.
memcpy
와 memmove
memcpy
와 memmove
함수는 메모리 영역을 다른 메모리 영역으로 복사하는 데 사용됩니다. 이 함수를 이해하고 구현하는 것은 컴퓨터를 이해하는 시작이라고 할 수 있습니다.
memcpy
함수의 구현먼저, memcpy 함수의 구현을 살펴봅시다. 이 함수는 원본 메모리에서 목적지 메모리로 데이터를 복사합니다. 이를 위해 다음과 같은 단계를 따릅니다.
memcpy 함수는 메모리 블록을 덮어쓰기 때문에, 메모리 중첩이 없는 경우에 적합합니다.