1. substr
char *ft_substr(char const *s, unsigned int start, size_t len);
: s 문자열을 start 인덱스부터 len 길이 만큼 자른 문자열을 반환.
- len이 s의 길이보다 클 때는 s의 문자열의 끝까지만 자르도록 처리해야 한다.
2. strjoin
char *ft_strjoin(char const *s1, char const *s2);
: s1과 s2를 이은 문자열을 반환.
3. strtrim
char *ft_strtrim(char const *S1, char const *set);
: s1 문자열의 앞, 뒤에 있는 set 문자열에 포함되는 문자들을 제거한 문자열을 반환.
- 처음과 끝의 인덱스를 구한 후 동적할당 하고, substr을 이용하여 값을 구했다.
4. split
char *ft_split(char const *s, char c);
: c를 구분자로 해서 문자열 s를 나눠서 2차원 배열에 할당한 후 반환
- 단어의 개수를 센 후에 2차원 포인터를 할당하고, 1차원 포인터를 각각 할당하면서 단어를 넣어준다.
- 이때, 동적할당에 실패하면 앞에서 동적할당한 메모리를 모두 free해주어야 한다.
5. itoa
char *ft_itoa(int n);
: 숫자를 받아서 문자열로 변환 후 반환.
- unsigned int를 사용하여 음수 최솟값과 양수 최댓값을 쉽게 처리하도록 했다.
- calloc을 사용하여 끝에 null을 나중에 따로 넣지 않아도 된다.
6. strmapi
char *ft_strmapi(char const *s, char (*f)(unsigned int, char));
: 문자열 s의 모든 문자를 파라미터로 받은 함수 f를 적용한 문자열을 반환.
7. putchar_fd
void ft_putchar_fd(char c, int fd);
: wrtie함수를 fd를 사용하여 c를 출력하는 함수.
8. putstr_fd
void ft_putstr_fd(char *s, int fd);
: wrtie함수를 fd를 사용하여 문자열 s를 출력하는 함수.
- write함수의 마지막 인자에 ft_strlen(s)를 넣어준다.
9. putendl_fd
void ft_putendl_fd(char *s, int fd);
: putstr_fd로 s를 출력 후 마지막에 개행을 출력하는 함수.
- len이 s의 길이보다 클 때는 s의 문자열의 끝까지만 자르도록 처리해야 한다.
10. putnbr_fd
void ft_putnbr_fd(int n, int fd);
: 숫자를 입력받아서 write로 출력하는 함수.
- 재귀함수를 사용하여 숫자를 앞에서부터 출력하도록 했다.