1. printf Prototype
int printf(const char *format, ...)
2. Format
Syntax: %[flags][width][.precision][length]type
* flags
'+' / '-' : 오른쪽 정렬 / 왼쪽 정렬(생략시 오른쪽 정렬이 기본값)
'#' : (type이 f, F, e, E, g, G 일 때) 0을 지우지 않음, (type이 x, X, o 일 때) 0, 0x, 0X을 붙여줌
'0' : 빈 칸을 0으로 채움
* width
'숫자' : 최소한의 숫자 문자 너비, 0으로 시작할 경우 빈 칸을 0으로 채움
'*' : n 길이의 숫자 문자 너비
* precision
'숫자' : (int형이 아닐 때) 소숫점 길이, (string형 일 때) 표시할 문자 길이
'*' : n 길이의 소숫점 또는 문자
* length
'hh' : (int 형에서) char형 으로 부터 승격된 int 크기 integer
'h' : (int 형에서) short형 으로 부터 승격된 int 크기 integer
'l' : (int 형에서) long 크기 integer
'll' : (int 형에서) long long 크기 integer
'L' : (float 형에서) long double 크기
'z' : (int 형에서) size_t 크기 integer
'j' : (int 형에서) intmax_t 크기 integer
't' : (int 형에서) ptrdiff_t 크기 integer
* type
'd' or 'i' : int 형을 부호가 있는 10진수로 출력
'u' : int : int 형을 부호가 없는 10진수로 출력
'f' or 'F' : double 형을 fixed-point 소수로 출력, 차이점은 무한대 값이나 NaN을 출력할 때 대소문자
'e' or 'E' : double 형을 지수 형식([-]d.ddd e[+/-]ddd)으로 소수 출력, 'E'는 최소 2자리 숫자를 가짐
'g' or 'G' : 출력 할 값에 따라서 fixed-point 출력 또는 지수 형식으로 출력
'x' or 'X' : unsigned int 형을 16진수로 출력,('x'의 경우 소문자로/'X'의 경우 대문자로)
'o' : unsigned int 형을 8진수로 출력
's' : char 문자열 출력
'c' : char 출력
'p' : void * 값을 16진수로 출력
'n' : 출력하지 않음,(argument는 반드시 singned int pointer이어야 함.), 성공적으로 쓰여진 문자의 수를 기록
%n을 악용할 수 있기 때문에 Visual Studio 2005 이후에서는 사용 안함으로 되어 있음.
ref : http://downrg.com/432
'Programming > C/C++/C#' 카테고리의 다른 글
[LINUX] TCP/IP Simple Chat (0) | 2012.08.25 |
---|---|
[Visual Studio] Editing시 멈춤 현상 - devenv cpu usage 100% (0) | 2011.07.25 |
[Visual Studio] Main Form에서 단축키 만들기 (0) | 2011.06.01 |
[PMIC Software] TI社 USB-GPIO Adaptor Function (1) - i2cWrite (0) | 2011.05.22 |
[Visual Studio] unsigned char 에 Data를 넣을때 Byte Type로 바꿔서 넣자 (0) | 2011.05.22 |