C 언어

    memcpy

    헤더 파일 사용 목적 메모리 B를 특정 길이(byte 단위) 만큼 메모리 A에 복사한다. 프로토타입과 매개변수 void *memcpy(void *dest, const void *src, size_t n); 1. void *dest : src를 복사해서 넣고자 하는 주소 2. const void *src : 복사 대상 주소 3. size_t n : 복사 하고자 하는 크기(byte단위) 반환값 dest의 첫 주소값 함수의 원리 이해를 돕기 위해 같은 동작을 하는 함수를 만든 것입니다. void*ft_memcpy(void *dest, const void *src, size_t n) { unsigned inti; i = 0; if (n == 0 || dest == src) // 복사하고자 하는 길이가 0이거나 ..

    memchr

    헤더 파일 사용 목적 지정한 메모리 범위 내에서 특정 문자를 찾는다 프로토타입과 매개변수 void *memchr(const void *s, int c, size_t n); 1. const void *s = 문자 c를 찾고자 하는 주소의 시작 지점 2. int c = 찾고자 하는 문자(ascii) 3. size_t n = 주소의 시작 지점부터 찾고자 하는 범위 (byte 단위) 반환값 1. 범위 내에 찾고자 하는 문자와 일치하는 지점이 있으면 그 주솟값을 반환 2. 범위 내에 찾고자 하는 문자가 없으면 NULL 포인터를 반환 함수의 원리 이해를 돕기 위해 같은 동작을 하는 함수를 만든 것입니다. void*ft_memchr(const void *s, int c, size_t n) { unsigned int..

    memcmp

    헤더 파일 사용 목적 두개의 메모리 주소값을 지정한 길이 만큼 비교 프로토타입과 매개변수 int memcmp(const void *s1, const void *s2, size_t n); 1. const void *s1 = 비교할 메모리 A 2. const void *s2 = 비교할 메모리 B 3. size_t n = 비교할 길이(byte 단위) 반환값 1. 비교하는 동안 두 메모리가 완벽하게 일치하면 '0'을 반환 2. 두 메모리가 일치하지 않은 지점이 있으면 *s1 - *s2를 반환 함수의 원리 이해를 돕기 위해 같은 동작을 하는 함수를 만든 것입니다. intft_memcmp(const void *s1, const void *s2, size_t n) { unsigned inti; i = 0; while..

    strlen

    헤더 파일 사용 목적 문자열의 길이를 조사 (마지막 NULL은 길이에 들어가지 않는다) 프로토타입과 매개변수 size_t strlen(const char *str); 1. const char *str = 길이를 조사할 문자열 함수의 원리 이해를 돕기 위해 같은 동작을 하는 함수를 만든 것입니다. size_tft_strlen(const char *str) { size_tcount; count = 0; while (*str) // str이 NULL이 나오기 전까지 { str++; count++; // count를 늘려나감 } return (count); // count를 반환 } 사용 예시 #include #include intmain(void) { char*str = "abcde"; intlength; l..