목록42 seoul (3)
mojo's Blog
Hexdump redirection 없이 시스템의 hexdump 명령과 동일한 기능을 하는 ft_hexdump 라는 프로그램을 작성해야 한다. 우선 처리해야 하는 옵션은 -C가 유일하다고 명시되어 있을텐데 -C 가 없을 경우도 처리해줘야 한다. 그리고 errno 변수를 사용할 수 있다. ※ hexdump 케이스 살펴보기 ① hexdump -C 옵션이 없는 hexdump 를 우선 살펴보도록 한다. tail 명령어와 동일하게 hexdump 뒤에 인자가 없을 경우 타이핑이 가능한 상태가 된다. 타이핑 가능한 상태 (사진 첨부하기) 이 상태에서 [ctrl + D] 키를 누르면 어떠한 것도 출력이 되지 않은 상태로 종료가 된다. 당연히 인풋이 없으니 출력이 아무것도 되지 않는다는 것은 굉장히 정상적인 일이다. 그..
tail 시스템 명령어 tail 와 동일한 기능을 하는 ft_tail 이라는 이름의 프로그램을 작성해보도록 한다. 처리해야 하는 옵션은 -c가 유일하며, ’+’ 나 ’-’ 기호는 처리하지 않아도 되며 errno 변수를 사용할 수 있다고 한다. 우선 tail 의 -c 옵션을 활용한 명령어에 대해서 몇가지 케이스를 분석한 후 구현에 들어가도록 한다. ① tail -c [숫자] 예를 들어서 "tail -c 10" 을 입력하면 타이핑을 할 수 있는 상태가 된다. 무언가를 타이핑한 후에 [enter] 를 누르면 라인개행이 이뤄지면서 계속해서 타이핑을 할 수 있다. 그리고 [ctrl + D] 를 누르면 타이핑 상태가 종료되면서 가장 마지막에 [숫자] 길이 만큼 타이핑했던 내용이 뜬다. 다른 예로 "tail -c 0..
Split char **ft_split(char *str, char *charset); str, charset 을 문자열로 받았을 때 charset 에 속한 문자들을 분리해서 char ** 타입으로 값을 반환해야 한다. str, charset 이 다음과 같다고 할 때 반환값이 무엇인지 알아보도록 한다. str = "..,abc.,/123...456//789../, hello world ///" charset = ".,/" 이때 반환값은 ret = { "abc", "123", "456", "789", " hello world ", 0 } 이다. ※ Split 구현 방법 ① char ** 타입으로 선언한 변수 result 에 대해서 문자열에 대한 주소와 Null 주소를 넣기 위해 갯수를 미리 정해야 한다. ..