42SEOUL

[c] LIBFT 2

daykim 2022. 1. 12. 17:18

목차

toupper

헤더 : <ctype.h>

int toupper(int c)

문자를 매개변수로 받아 소문자만 대문자로 변경하여 반환해준다.

매개변수가 int형으로 문자의 아스키 코드표에 기반한 10진수로 변환되어 들어간다.

다른 모든 문자는 그대로 반환

 

tolower

헤더 : <ctype.h>

int tolower(int c)

문자를 인자로 받아 대문자인 경우 소문자로 반환해준다.

다른 모든 문자는 그대로 반환

 

strchr

char *strchr(const char *str, int c)

문자열 내에 일치하는 문자가 있는지 검사하는 함수

문자가 존재하면 해당 위치의 포인터 반환

존재하지 않으면 널포인터 반환

 

strrchr

char *strrchr(const char *str, int c)

문자열 내에 위치한 문자 c 중 마지막에 있는 문자의 위치를 반환

존재하지 않으면 널 포인터 반환

 

memchr

헤더 : <string.h>

void *memchr(const void *str, int c, size_t n)
  • str : 검사할 메모리의 포인터
  • c : 검색 문자
  • n : 검사할 영역의 크기
  • return : 처음 발견된 위치의 포인터. 없으면 null 반환

문자열에서 일치하는 문자가 있으면 해당 위치의 포인터를 반환해주는 함수

 

memcmp

헤더 : <string.h>

int memcmp(const void *str1, const void *str2, size_t n)
  • str1 : 비교할 첫 번째 주소
  • str2 : 비교할 두 번째 주소
  • n : 비교할 크기
  • return
    • 같으면 0
    • src1이 크면 1
    • src1이 작으면 -1
    • 윈도우에서만? 위의 값으로 반환. 다른 OS에선 차이값 반환이라고 한다.

두개의 문자열을 비교하는 함수로 n개 만큼만 비교한다.

 

 

strnstr

헤더 : <string.h>

char *strnstr(const char *str, const char *substr, size_t n)

str의 n 만큼의 길이 중에서 substr을 찾는 함수

return

문자열 찾을 경우 찾은 문자열 시작 주소
문자열 찾지 못 할 경우 NULL 포인터
찾는 문자열이 NULL 또는 n이 0인 경우 str 문자열 주소
NULL 포인터를 입력받을 경우 segmentation fault
n 값이 음수인 경우 strstr 함수와 똑같이 동작
https://wldwlddl59.tistory.com/34?category=990948

 

atoi

헤더 : <stdlib.h>

int atoi(const char *str)

문자열을 정수값으로 반환해준다.

isspace()함수가 true인 선행 공백문자를 무시한다.

그 후 첫 번째 비공백 문자부터 수로 변환한다. 비공백 문자 첫 부분에는 '-' 또는  '+'가 올 수 있다.

그 후 숫자('0' ~'9') 이외의 문자는 변환되지 않는다.

함수가 입력을 해당 유형의 값으로 변환할 수 없는 경우 리턴값은 0이다.

 

calloc

헤더 : <strlib.h>

void *calloc(size_t n, size_t size)

동적 메모리를 생성하는 함수로 size 크기의 동적 메모리를 n개 생성하는 함수다.

해당 메모리들은 0으로 초기화된다.

return : 할당된 메모리의 시작주소

 

'42SEOUL' 카테고리의 다른 글

[C / Libft] Makefile 만들기  (0) 2022.01.21
[C] NULL 포인터  (0) 2022.01.21
[C] size_t  (0) 2021.11.18
[C] LIBFT 1  (0) 2021.11.18
[C] malloc  (0) 2021.10.26