출력 변환 문법

출력 변환 문법 (Output Conversion Syntax)

printf 템플릿 문자열에는 변환 지정자(conversion specification)가 들어갈 수 있는데, 이 절에서는 그 정확한 문법을 다뤄요. 템플릿 문자열에서 변환 지정자의 일부가 아닌 문자는 출력 스트림에 그대로 출력됩니다.

출처: Output Conversion Syntax

본문

printf 템플릿 문자열의 변환 지정자는 일반적으로 다음 형태를 가져요:

% flags width [. precision] type conversion

예를 들어 변환 지정자 %-10.8ld에서 -는 플래그, 10은 필드 폭을 지정하고, 정밀도는 8, 문자 l은 타입 수정자(type modifier), d는 변환 스타일을 지정해요. (이 특정 타입 지정자는 숫자 인자를 십진 표기로, 최소 8자리로, 폭이 최소 10자인 필드에서 왼쪽 정렬로 출력하라고 하는 거죠.)

더 자세히 보면, 출력 변환 지정자는 맨 앞의 % 문자 다음에 순서대로 이어집니다:

  • 플래그(flags)
  • 필드 폭(width)
  • 정밀도(precision)
  • 타입 수정자(type modifier)
  • 변환 문자(conversion character)

필드 폭을 *로 지정할 수도 있어요. 이는 인자 목록에서 (실제로 출력할 값 바로 앞의) 다음 인자를 필드 폭으로 사용한다는 뜻이에요. 값은 가장 가까운 정수로 반올림됩니다. 값이 음수면 - 플래그를 설정하고(아래 참고) 절댓값을 필드 폭으로 사용한다는 뜻입니다.

정밀도도 *로 지정할 수 있어요. 이는 인자 목록에서 (실제로 출력할 값 바로 앞의) 다음 인자를 정밀도로 사용한다는 뜻입니다. 값은 정수여야 하고, 음수면 무시됩니다.

허용되는 정확한 옵션과 해석 방식은 변환 지정자마다 달라요. 각 변환에서 사용하는 특정 옵션에 대한 정보는 개별 변환의 설명을 참고하세요.

더 알아보기

  • octave-output-conversion-for-matrices — 행렬을 위한 출력 변환
  • octave-other-output-conversions — 기타 출력 변환
  • octave-string-input-conversions — 문자열 입력 변환