파도가 칠 때는 서핑을

Soon as possible

Wait!

공부/TIL

20210301(월)

hyeonhki 2021. 3. 1. 11:39
728x90

- 📆 학습 날짜

2021.03.01 (월)

- 🕐 학습 시간

9:00 - 11:00 (집)
14:00 - 17:00 (집)

- ✓ 학습 목표

- 백준 알고리즘 스터디!

- ? 학습 범위 및 주제

- C 프로그래밍
- 42seoul : ft_printf

- 📝 상세 학습 내용

  • 백준 알고리즘 코딩 스터디
    • c 언어는 많은 시간을 소요 (파이썬 대비)
      • 프로그래밍 언어의 선택은 어떤 걸로 할 것 인가? => 파이썬으로 결정!
  • 프로그래머스 실력 체크
    • Level 1 클리어
    • Level 2 실패(42점)

  • %d 구현하기
    • ft_strjoin을 이용해서 출력 문자열에 precise를 고려하여 문자열 ret을 만들어준다.
    • '-' flag는 width에만 적용된다.
    • 공백을 출력할 버퍼를 굳이 width와 출력할 문자열의 길이를 고려할 필요가 없다. 왜냐하면, malloc (음수) 처리되면 널로 출력되기 때문이다.
      => malloc 자체에서 문제가 없지만 받아내고 처리하는 ft_bewhat에서 문제가 생긴다.
      => ft_bewhat에서 널 체크를 해준다.
      => ft_ptstr에서 널 체크를 해준다.

  • 테스터기 결과
    • c, s, d 다 터졌다
      • *플래그에 음수로 수가 들어왔을 경우!
      • * 가 width만 적용되는 게 아니고 precise의 자리도 들어갈 수 있다고...!
      • *안에 음수가 들어오면 플래그에 영향을 주는 듯, Precise 자체에서는 음수를 받을 수 없게 되어있음
      • 음수 출력의 경우, Precise가 들어오면 - 부호 안으로 0을 붙이는데 이 경우를 해결해야 함.
    • -.5d => 00135
    • .*d,-5 => 135 ????
      • 이 결과를 어떻게 받아들여야 할까..
    • *-를 받으면 중복이든 뭐든 -플래그 적용! (width 위치에서)
    • precise에서 *가 인자를 -로 받으면 아무 일도 안 생김! 0 이상부터 적용

- ? 추가적으로 공부해야 할 내용

  • 파이썬으로 알고리즘 공부해보자

- 👉 다음 목표


- * 플래그의 처리
    - 구조적으로 info에 받아들이는 내용을 바꿔야 할 것 같다.
    - 로직 자체는 precise > width > flag 순
    - precise 위치에 들어갈 * 플래그를 고려해주면 될 듯

- 📚 참고 서적 및 웹사이트

  •  
  •  

728x90

'공부 > TIL' 카테고리의 다른 글

20210306(토)  (0) 2021.03.07
20210305(금)  (0) 2021.03.05
20210304(목)  (0) 2021.03.04
20210303(수)  (0) 2021.03.04
20210302(화)  (0) 2021.03.03