728x90
728x90
- [ 프로그래밍/42 Gyeongsan ]ft_printf - ft_putnbr()과 ft_putstr()만으로는 충분하지 않기 때문에2025-07-20 19:28:56들어가며printf는 C 표준 라이브러리의 대표적인 출력 함수로, 서식 문자열(format string)을 해석하여 가변 인자들을 형식화된 텍스트로 변환하고 표준 출력(stdout)에 출력한다. 이 글에서는 printf 함수의 작동 원리와 주요 기능, 가변 인자 처리 기법(stdarg.h 활용), 출력 버퍼링과 성능 최적화, 구현 시 직면할 수 있는 문제점과 그 해결 방법을 알아본다. 또한 표준 printf와 이를 재구현하는 과제인 ft_printf의 차이점을 분석하고, 간단한 구현 예제 코드를 통해 내부 동작을 설명한다. 이를 위해 C 표준 문서[^1], GNU libc 문서[^2], 권위 있는 서적[^3] 등 신뢰할 만한 자료를 인용하여 정확한 정보를 제공한다. printf 함수 개요 및 작동 원리p..
- [ 프로그래밍/42 Gyeongsan ]Get Next Line - 한 줄씩 읽는 것은 너무 지루하다2025-03-16 18:17:44들어가며get_next_line 프로젝트는 파일 디스크립터로부터 한 번 호출에 한 줄씩 읽어들이는 함수를 구현하는 과제이다. 42 과정에서 파일 I/O와 메모리 관리, static 변수 활용 등을 심도 있게 훈련한다[^1]. 이 글에서는 해당 과제를 성공적으로 수행하기 위해 필요한 사전 지식을 정리하고, 실제 평가 기준을 고려한 모범 구현 방식과 고급 기법을 단계별로 분석한다. 1. 파일 입출력 기초 및 최적화 기법파일 디스크립터(FD)는 유닉스 계열 시스템에서 열린 파일을 가리키는 비음수 정수 식별자이다[^2][^3]. 프로세스마다 표준 입출력에 해당하는 0, 1, 2번 FD가 있다(각각 stdin, stdout, stderr). 그 외에 open() 호출을 통해 파일을 열면 사용되지 않은 새로운 FD..
728x90
728x90