몽상실현개발주의

[따배씨] 4.8 변환 지정자의 수식어들 본문

Language/C

[따배씨] 4.8 변환 지정자의 수식어들

migrationArc 2021. 5. 14. 10:27

[따배씨] 4.8 변환 지정자의 수식어들

따배씨 - 따라하며 배우는 C언어

4강 문자열과 형식 맞춘 입출력

4.8 변환 지정자의 수식어들

 

// %[flags][width][.precision][length]specifier
pritnf("%+10.5hi", 256)
  • 형식 지정자
  • 출력 옵션 수식어: flag, width, .precison, length

 

  • flag
    • ' - ': 출력 시 왼쪽 정렬 (기본값은 오른쪽 정렬), width와 함께 사용
    • '+' : 양수 일 때도 '+' 기호를 출력 (기본값은 양수 일 때 '+' 출력 안함)
    • '#' : 0진수, 16진수 출력 시, 0, 0x 를 출력
    • '0' : width 를 출력할때, 0으로 빈칸을 채움

 

  • width
    • 표기한 숫자 만큼 빈칸을 포함하여 출력
    • ' * ' : * 에 해당하는 숫자를 입력받아 처리

 

  • .precision
    • '.number' : 숫자만큼의 자리수를 출력하여 정밀도를 보장, 부족한 자리수는 0으로 출력
    • ' .* ' : * 에 해당하는 숫자를 입력받아 처리

 

  • length
    • 정수(float) 출력시 내부적으로 double로 처리 됨
    • long double의 경우 L 을 사용하여 출력하지만, 대부분 double과 logn double의 사이즈가 같게 처리 하기 때문에 명확한 표현이 필요한 경우 외에는 의미가 없음

 

 

#include <stdio.h>
#include <limits.h>

int main()
{
    printf("%10i\n", 1234567);
  	//    1234567
    printf("%-10i\n", 1234567);
  	// 1234567
    printf("%+i %+i\n", 123, -123);
    // +123 -123
    printf("% i \n% i\n", 123, -123);
    //  123
    // -123
    printf("%X\n", 17);
    // 11
    printf("%#X\n", 17);
    // 0X11
    printf("%05i\n", 123);
  	// 00123
    printf("%*i\n", 7, 456);    // %7i 와 같은 표현
  	//     456
    
    printf("\nPrecision\n");
    printf("%.3d\n", 1024);
  	// 1024
    printf("%.5d\n", 1024);
  	// 01024
    printf("%.3f\n", 123456.1234567);
    // 123456.123
    printf("%.3f\n", 123456.1235);
  	//    123.457
    printf("%10.3f\n", 123.45678);
  	// 000123.457
    printf("%010.3f\n", 123.45678);
  	// 000123.457
    printf("%.5s\n", "ABCDEFGHIJKLNM");
  	// ABCDE
    printf("%.s\n", "ABCDEFGHIJKLNM");  // %0.s 와 같은 표현
  	// 
    
    printf("\nLength\n");
    printf("%hhd %hd %d\n", 257, 257, 257);
  	// 1 257 257
    printf("%d %lld %lld\n", INT_MAX + 1, INT_MAX + 1, 124783648LL);
  	// -2147483648 2147483648 124783648
    return 0;
}

 

 

 


이 글의 모든 사진과 내용의 출처는 홍정모 교수님께 있음을 알려드립니다.

http://blog.naver.com/atelierjpro

 

실리콘 밸리의 프로그래머 : 네이버 블로그

안녕하세요! 홍정모 블로그에 오신 것을 환영합니다. 주로 프로그래밍 관련 메모 용도로 사용합니다. 강의 수강하시는 분들은 홍정모 연구소 카페로 오세요.

blog.naver.com

http://www.inflearn.com/course/following-c

 

홍정모의 따라하며 배우는 C언어 - 인프런 | 강의

'따배씨++'의 성원에 힘입어 새롭게 개발된 C 언어로 시작하는 프로그래밍 입문 강의입니다. '따배씨'와 함께 프로그래밍 인생을 업그레이드 해보세요., 따라하며 배우는 C언어 '따배씨++'의 성원

www.inflearn.com

 

Comments