티스토리 뷰

반응형

memset

  • 메모리 안의 값을 원하는 만큼 원하는 값으로 변환 해주는 함수!

    프로토타입파라미터

    메모리의 주소를 가져와 줌, 어떤 형태의 값이 들어올지 모르기 때문에 void 형인 듯

    int c;size_t n;
  • n에 얼마나 바꿀지 적어주면 되는데 메모리 하나당 총 8바이트니까 8바이트 자료형인 size_t를 사용!
    ## 변수 ### unsigned char* temp; void *s의 자료형을 영구적으로 바꿔주기 위해서 만든 변수이다. ### unsigned long long tur; index이다. tur은 천천히 가도 이기는 동물인 turtle에서 착안했다. 본래의 자료형이 8바이트 짜리인 size _t 형이라 같은 8바이트로 만들었다. ## 구현 코드 ```C #include
  • 바꾸고 싶은 값 넣어주고 받아옴
  • void *s;
  • void *memset(void *s, int c, size_t n)

void my_memset(void *s, int c, size_t n)
{
unsigned char
temp;
unsigned long long tur; //index

temp = s;
tur = 0;
while(tur < n)
{
    *temp = (unsigned char)c;
    temp++;
    tur++;
}
return (s);

bzero

  • 메모리 안의 값을 원하는 만큼 0으로 채우는 함수!프로토타입
  • void bzero(void *s, size_t n)

파라미터

void* s;

memset처럼 메모리의 주소를 받아옴

size_t n;

얼마나 바꿀지 바이트 단위로 너어줌!

변수

unsigned char *temp;

void *형의 주소값을 형 변환해줄 임시 저장소

구현 코드

#include <string.h>

void *my_memset(void *s, int c, size_t n)
{
    unsigned char* temp;

    temp = s;
    while(n--)
    {
        temp = 0;
        temp++;
    }
}
틀린 부분 있을 수 있습니다. 댓글로 남겨주세요!
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함