C++ printf() 함수의 형식 지정자

2014.06.14 08:37

엘카 조회 수:7522

참고 문서  
  %c  문자 
%d, %i  부호가 있는 정수로서 10진수 
%e, %E 
지수를 가지는 형태의 실수  
(지수부 표기에 %e는 소문자 e를 사용하고 %E는 대문자 E를 사용한다) 
%f  실수로서 10진수 
%g  %e와 %f 중 더 짧은 표현을 사용한다. 
%G  %E와 %f 중 더 짧은 표현을 사용한다. 
%o  부호가 없는 정수로서 8진수 
%s  문자열 
%u  부호가 없는 정수로서 10진수 
%x, %X 
부호가 없는 정수로서 16진수 
(16진수 표현에 %x는 소문자를 사용하고 %X는 대문자를 사용한다) 
%p  포인터(변수의 선두주소)를 16진수로 출력한다. 
%n  관련된 인수는 그때까지 출력된 문자들의 수를 저장할 정수형 변수의 포인터가 되어야 한다. 
%%  %부호를 출력한다. 


  printf() 함수 
printf() 함수용 형식 지정자의 옵션 구성 
%(플래그 옵션, 최소 필드 너비 옵션, 정밀도 옵션, 수정자 옵션)형식 지정자 
printf() 함수용 형식 지정자의 옵션 사용 예 
%+8d  → 10진수 정수 출력, 양수인 경우 앞에 +를 붙이며 8자리 수를 오른쪽에
                 맞추어 출력. 
%-9d  → 10진수 정수 출력, 양수인 경우 앞에 +를  붙이지 않으며 9자리 수를
                 왼쪽에 맞추어 출력. 
%-13.2lf  → 10진수 double형 실수를 출력, 13자리 수를 왼쪽에 맞추어 출력하며
                 소수점 아래는 2자리만 나타낸다. 양수인 경우 앞에 +를 붙이지 않음. 






printf() 함수 형식 지정자를 위한 플래그 옵션 
   printf() 함수 
printf() 함수 형식 지정자를 위한 수정자 옵션 
플래그  의미 
-  필드에서 값을 왼쪽으로 정렬한다. 기본은 오른쪽 정렬 
0  숫자 값이 오른쪽 정렬일 때 남게 되는 빈 공간을 공백이 아닌 0으로 채운다. 
+  부호가 있는 값이 사용될 때 값이 음수가 아닌 값에 대해서는 값 앞에 + 기호를 붙여 나
타낸다. 
공백  부호가 있는 값이 사용될 때 값이 음수가 아닌 값에 대해서는 값 앞에 공백을 하나 붙여 
나타낸다. 
#  지정된 진수형식에 따라 C언어에서 사용되는 진수표현형태로 값을 나타낸다. 
(C언어에서 8진수를 나타낼 대는 수의 맨 앞에 0을 붙이며, 16진수를 나타낼 대는 수의 
맨 앞에 0x 또는 0X를 붙인다) 
수정자  의미 
h  "%d", "%i", "%u", "%o", "%x" 와 함께  short int 자료 형을 구분하여 출력 
l  "%d", "%i", "%u", "%o", "%x" 와 함께 long int 자료 형을 구분하여 출력, 
"%f"와 함께 double 자료 형을 구분하여 출력시킬 때 사용 
L  "%f"와 함께 long double 자료 형을 구분하여 출력시킬 때 사용 


 #include <stdio.h> 
int main(void) 
{     
   int num; 
   char ch; 
   float f;   
   num=200;   
   ch='B';  f=3.4; 
   printf("printf 함수 Test ...\n");     
   printf("정수형 : %d \n", num);     
   printf("실수형 : %f \n", f);     
   printf("문자 : %c \n", ch);    
   printf("문자열 : %s \n", "C language"); 
   return 0; 
} 



#include <stdio.h> 
int main(void)     { 
   double d1=0.00123;     
   double d2=0.000123;     
   double d3=0.0000123;     
   double d4=0.00000123;     
   printf("%d \n",333);     
   printf("/%d/ \n",333);     
   printf("/%10d/ \n",333);     
   printf("/%-10d/ \n",333);     
   printf("/%010d/ \n\n",333);     
   printf("/%f/ \n",8192.197);     
   printf("/%13f/ \n",8192.197);     
   printf("/%*.*f/ \n",13,2,8192.197); /* %13.2f와 같은 표현 */    
   printf("/%13.2f/ \n",8192.197);     
   printf("/%-13.2f/ \n\n",8192.197); 

 
   printf("%c %d %c %d \n",'A','A',97,97);     
   printf("%s \n", "C Language...");     
   printf("%5s\n", "C Language...");     
   printf("%.5s \n\n", "C Language...");     
 
   printf("%d %o %x \n",67,67,67);     
   printf("%d %#o %#x \n",067,067,067);     
   printf("%d %#o %#x \n",0x67,0x67,0x67);   
   printf("%x, %#10x, %#010x \n\n", 0x1234, 0x1234, 0x1234); 
   
   printf("%lf, %lf, %lf, %lf \n", d1, d2, d3, d4); 
   printf("%E, %E, %E, %E \n", d1, d2, d3, d4); 
   printf("%G, %G, %G, %G \n", d1, d2, d3, d4);    
 
   return 0; 
} 


printf() 함수 

Escape sequence 

- 단일 키보드 입력으로 나타낼 수 없는 문자, 표시형태를 가지지 않는 화면 제어  

   문자, 혹은 다른 특별한 목적(C 언어 문법을 표기할 목적)으로 사용되는 문자들을  

   표준 출력으로 나타내기 위한 방법 

- C언어에서는 앞에 역슬래쉬(\) 문자를 붙여 나타내기 때문에 역슬래쉬 문자 상수  

   (backslash-character constant) 라고도 부른다. 

 

 

제어문자  기능 

\n  줄 바꿈 

\t  탭 문자 (일정 공백 띄움) 

\b  back space 

\r  캐리지 리턴 

\0(zero)  null 문자 

\f  폼 피드 

\a  bell 소리 

\\  역슬레쉬 

\'  작은 따옴표(') 

\"  큰 따옴표(") 


 #include <stdio.h> 
 
int main(void)      
{ 
   printf("one");      
   printf("two");      
   printf("three \n");      
   printf("one \ntwo \nthree \n");      
   printf("one \rtwo \rthree \n");      
   printf("one \ttwo \tthree \n");      
   printf("one \b\b\b\ntwo \n");      
   printf("one \\two \\three \n");      
   printf("one \"two \"three \n");      
   printf("one \'two \'three \n"); 
   return 0; 
} 

번호 제목 날짜 조회 수
43 구조체 포인터 2014.06.15 931
42 구조체의 선언과 데이터 입·출력 2014.06.15 3084
41 함수 포인터 2014.06.15 447
40 배열과 포인터 2014.06.15 406
39 포인터 연산 2014.06.15 384
38 포인터 변수 2014.06.15 414
37 데이터 정렬 2014.06.15 424
36 배열 초기화 2014.06.14 630
35 2차원 배열 2014.06.14 670
34 문자열 처리 함수 2014.06.14 412
33 문자열 입출력 함수 2014.06.14 442
32 접근 수정자 2014.06.14 824
31 전역 변수 2014.06.14 308
30 지역 변수(local variable) 2014.06.14 295
29 변수와 메모리 저장 위치 2014.06.14 428
28 비트 연산자 2014.06.14 288
27 관계 연산자와 논리 연산자 2014.06.14 472
26 증감 연산자 2014.06.14 319
» printf() 함수의 형식 지정자 2014.06.14 7522
24 열거 형 변수의 이해 2014.06.14 465