반응형
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++;
}
}
틀린 부분 있을 수 있습니다. 댓글로 남겨주세요!
반응형
'세상을 바꿀 소프트웨어 공부 > C언어' 카테고리의 다른 글
<string.h> memcpy, memccpy 함수 설명, 나만의 메뉴얼! (0) | 2021.01.08 |
---|---|
0. 코딩 강의는 아무나 해도 되나? - 소개 (2) | 2020.12.27 |
C언어 ctype.h 모든 함수 구현하기 (설명, 용도, 변수, 리턴값) (0) | 2020.12.24 |