본문 바로가기

C, C++

printf 함수

밑의 함수와 앞으로 배울 대부분의 함수를 사용할때 코드 맨 윗줄에

#include <stdio.h>

코드를 추가해 주세요. 이는 해당 함수를 사용하기 위해 함수 정보가 담긴 코드를 포함시킵니다.

int printf(const char* format, ...);

뒤의 인수들과 조합하여 format 문자열을 콘솔에 출력합니다.

printf("숫자 : %d, %f", 3, 2.5f);인 경우 출력되는 내용은 숫자 : 3, 2.5입니다.

 

format 목록 : 어떤 타입의 값을 출력하려면 반드시 밑의 목록을 따라야 합니다.

%d 또는 %i : 정수

%u : 부호 없는 정수

%f : 실수

%c : 한 개 문자 출력

%s : 문자열 출력

 

%o : 부호 없는 8진수 정수

%x : 부호 없는 16진수 정수(소문자 ff, c2)

%X : 부호 없는 16진수 정수(대문자 FF, C2)

%e : 지수 표기법(소문자 2.569e+3)

%E : 지수 표기법(대문자 2.569E+3)

%g : %e와 %f중 더 짧은 형식으로 출력

%G : %E와 %f중 더 짧은 형식으로 출력

%p : 포인터의 주소 값을 출력

 

여기서 포맷에 옵션을 넣을 수 있는데

%[플래그(중첩 가능)][자릿수][.소수점 이하 자릿 수] 포맷 형태로 옵션을 넣을 수 있습니다.

 

먼저 자릿수만 썼을 때,

printf("% 10d",20);

        20이 출력되는데 공백 8칸, 숫자가 출력돼서 총 10칸을 출력하는 겁니다.

 

만약에 플래그 -을 추가하면 "%-10d"

20        이돼서 20뒤에 공백 8자리가 추가되고,

 

0을 추가하면 "%010d"

0000000020으로 공백이 0으로 대체됩니다.

 

  • 자릿수와 상관없는 플래그 +는 양수를 출력할 때 앞에 +를 붙입니다.
  • #는 16진수를 출력할 때 앞에 %x경우는 0x, %X면 0X를 붙입니다.
  • 소수점 이하 자릿수는 실수를 출력할 때 소수 몇 번째 자리까지 반올림하여 출력할지를 설정합니다. "%.3f" 3.1239456 -> 3.124

※ %문자 자체를 출력하려면 %%으로 써주세요.

참고 :

http://www.cplusplus.com/reference/cstdio/printf/

'C, C++' 카테고리의 다른 글

C언어 입력함수들  (0) 2019.11.26
scanf 함수, 입력 버퍼 비우기  (0) 2019.11.26
함수  (0) 2019.11.25
변수 타입 종류  (0) 2019.11.25
변수  (0) 2019.11.25