[C] memmove / memmove.c / memmove in c
2022. 7. 25. 17:35ㆍ🧑🏻💻/C & C++
void *memmove(void *dst, const void *src, size_t len)
{
unsigned char *dest;
unsigned char *source;
dest = (unsigned char *)dst;
source = (unsigned char *)src;
if (dst < src)
{
while (len--)
*dest++ = *source++;
}
else if (dst > src)
{
while (len--)
*(dest + len) = *(source + len);
}
return (dst);
}
DESCRIPTION | memmove함수는 비파괴적인 방식으로 사용되는 복사입니다. |
변수명 | 설명 |
void *dst | 설정할 메모리 주소 |
const void *src | 복사할 메모리 |
size_t len | 복사할 길이 (byte 단위) |
return | |
성공 | dst의 메모리 시작 주소. |
memmove는 주소값을 비교한 후 복사 시작.
앞에서부터 복사할 것인지 뒤에서부터 복사할 것인지 확인 후 복사.
'🧑🏻💻 > C & C++' 카테고리의 다른 글
[C] substr / substr.c / substr in c (0) | 2022.09.14 |
---|---|
[C] memset / memset.c / memset in c (0) | 2022.07.25 |
[C] memcpy / memcpy.c / memcpy in c (0) | 2022.07.25 |
[C] memcmp / memcmp.c / memcmp in c (0) | 2022.07.25 |
[C] memchr / memchr.c / memchr in c (0) | 2022.07.25 |