[C] printf() 구현하기 (2) - format
·
42Seoul/Printf
format 다양한 자료형 변수를 문자열로 변환하는 방식을 지정해주는 형식 문자열(format string)인 문자열 변수를 받아들인다. 형식 지정자 설명 d,i 부호 있는 10진 정수 u 부호 없는 10진 정수 o 부호 없는 8진 정수 x 부호 없는 16진 정수(소문자) X 부호 없는 16진 정수(대문자) f 실수를 소수점으로 표기(소문자) F 실수를 소수점으로 표기(대문자) e 실수 지수 표기법 사용(소문자) E 실수 지수 표기법 사용(대문자) g %f와 %e 중에서 짧은 것을 사용(소문자) G %F와 %E 중에서 짧은 것을 사용(대문자) a 실수를 16진법으로 표기(소문자) A 실수를 16진법으로 표기(대문자) c 문자 s 문자열 p 포인터의 메모리 주소 n %n 부분에 int 포인터를 넣으면 지금..
[C] printf() 구현하기 (1) - introduction (가변 인자)
·
42Seoul/Printf
c언어를 공부하다보면 printf()가 함수임을 알게되고, 매개변수가 가변적으로 들어갈 수 있다는 것에 의문이 든다. printf()는 인자를 1개, 2개, 3개, ..... 몇 개를 넣어도 문제없이 돌아간다. 이것을 가능하게 해주는 것이 가변 인자라는 것이다. printf의 프로토타입을 보면 아래와 같다. int ft_printf(const char *, ...); 이 매개변수 중 ...이 가변 인자이다. 가변 인자(Variadic Arguments)란? 보통 함수에서 가변 인자를 정의할 때는 고정 매개변수가 한 개 이상 있어야 하며, 고정 매개변수 뒤에 ...을 붙여 매개변수의 개수가 정해지지 않았다는 표시를 해준다. 단, ... 뒤에는 다른 매개변수를 지정할 수 없다. 가변인자에 관련된 변수는 #i..
WONILLISM
'42Seoul/Printf' 카테고리의 글 목록