-
Printf 의 type 정리IT/C/C++ 2008. 10. 26. 13:24
굳이 이걸 스크랩 한 이유는 printf("%g", ret ) 을 쓰면서 (double ret ) %g 포맷에 대해 리뷰할 필요를 느꼈기 때문이다. 아래 표에는 안나와있지만 printf("%g",ret ) 으로 쓰면 ret = 1.0 일 경우에는 1 을 찍고, 1.25 일 경우는 1.25 만 찍는 등.... 소수점 아래 0 은 제거하고, 정수만 있을때는 %d 처럼 동작한다. %f 의 경우 나누어 떨어지는 뒷자리의 0 은 0 으로 모두 채운다. 1.0 을 1.0000000000 이라고 찍는 것이다.
type (형)
인수의 형을 지정
d int값을 부호있는 10진수로 출력 i d와 같음 u int값을 부호없는 10진수로 출력 X int값을 부호없는 16진수로 출력 10~15은 'A'~'F'로 표시 x int값을 부호없는 16진수로 출력 10~15은 'a'~'f'로 표시 o int값을 부호없는 8진수로 출력 p 포인터값을 16진수로 출력 s 문자열 출력 c int값을 문자로 출력 C c와 같음 f double값을 소수로 출력 (예:12.566371) e double값을 지수로 출력 (예:1.256637e+001) E e와 같음 'e'가 'E'로 표시 (예:1.256637E+001)。 g 숫자값의 크기에 따라 f나 e로 출력 (예:12.5664、2.99792e+008)
숫자값의 절대치가 너무 커서 precision의 자리수를 넘는 경우와 숫자값의 절대값이 0.0001보다 작은 경우 e형식이 사용되어짐. 그 외의 경우는 f형식으로 사용됨G 9와 같음 'e'가 'E'로 표시 'IT > C/C++' 카테고리의 다른 글
CFileDialgog 를 이용한 파일 열기 및 저장 (0) 2009.02.18 트레이 아이콘 처리하기 (0) 2008.12.17 MFC 트레이 아이콘 등록 및 윈도우 감추기 (0) 2008.12.17 폴더의 모든 하위폴더와 파일들 얻어오기 (11) 2008.12.15 당신은 C++의 발명자? 그렇지 않으면 창조자? ~Bjarne Stroustrup 씨와의 대화~ (0) 2008.09.15