헤더 파일
<string.h>
사용 목적
메모리를 지정한 크기만큼, 특정 값으로 채운다.
메모리의 첫 주소를 반환
프로토타입과 매개변수
void *ft_memset(void *b, int c, size_t len);
void *b = 특정 값으로 채우고 싶은 메모리의 시작값
int c = 채우고 싶은 특정 값 (ascii)
size_t len = 지정한 길이
반환값
메모리의 첫 주소
함수의 원리
이해를 돕기 위해 같은 동작을 하는 함수를 만든 것 입니다.
void *memset(void *b, int c, size_t len)
{
size_t i;
i = 0;
while (i < len) // 지정한 길이만큼
{
*(char *)b = c; // 메모리를 특정 값으로 채운다.
b++;
i++;
}
return (b - i); // 메모리의 첫 주소값 반환
}
사용 예시
#include <string.h>
#include <stdio.h>
int main(void)
{
char memory[11] = "abcdefghij";
printf("Before memset: %s\n", memory);
memset(memory, 33, 10);
printf("After memset: %s\n", memory);
return (0);
}
Before memset: abcdefghij
After memset: !!!!!!!!!!
'C언어 > 함수' 카테고리의 다른 글
memmove (0) | 2020.08.10 |
---|---|
memccpy (0) | 2020.08.10 |
memcpy (0) | 2020.08.10 |
memchr (0) | 2020.08.10 |
memcmp (0) | 2020.08.10 |
strlen (0) | 2020.08.10 |