[C] C언어 기초

[C] C언어의 서식 지정자 (형식 문자)

ITsubin 2022. 3. 20. 09:13

설명을 위해 [C] C언어의 함수와 변수 포스팅에서의 예시를 그대로 가져왔습니다.

#include <stdio.h>
int main(void) {
     int a;
     a = 2;
     printf("%d", a);
}

 

위 예시에서의 printf는 print format을 의미합니다. 포맷 형식을 출력하라는 뜻입니다.

printf("%d", a);  는 형식 문자 %d에게 뒤의 a를 넘겨주어 출력합니다.

 

여기서 형식 문자 (서식 지정자)는 컴퓨터가 어떠한 정보를 어떻게 해석할 것인지 지정해주는 역할입니다.

형식 문자 (서식 지정자)의 종류는 아래와 같습니다.

%i : 정수형
%d : 정수형
%f : 실수형
%c : 문자형
%s : 문자열
...

 

실수형 서식 지정자 %f를 사용해보겠습니다.

실수는 기본적으로 소수점을 기준으로 0을 6개 붙여주는 것을 알 수 있습니다.

이 서식 지정자를 활용하여 출력할 소수점의 자리 수를 정할 수 있습니다.
아래 예시처럼 %0.2f를 사용한다면 소수점 둘째자리까지만 출력하는 것을 알 수 있습니다.

만약 0.445566을 출력한다고 가정한다면 %0.1f는 0.4로, %0.2f는 0.45로 출력하는 것을 알 수 있습니다.
%0.1f는 소수점 한자리만 출력하기 때문에 뒷자리를 반올림하여 0.4,
%0.2f는 소수점 두자리만 출력하기 때문에 뒷자리를 반올림하여 0.45로 출력하기 때문입니다.

 

 

%f뿐 아니라 아래 예시처럼 %d도 물론 가능합니다.

%5d : 5칸을 확보 후 오른쪽 끝부터 출력.

%05d : 5칸을 확보 후 오른쪽 끝부터 출력.(단, 빈칸은 0으로 출력)