다음: 그 밖의 출력 변환, 이전: 정수 변환, 상위 문서: C 형식 입출력 함수 [차례][찾아보기]
이 절은 떠돌이 소수점에 쓰는 변환 품목인 ‘%f’, ‘%e’, ‘%E’, ‘%g’, ‘%G’에 관합니다.
‘%f’ 변환은 지정한 정밀도에 따라 소수점 자릿수가 다른 [-
]ddd.
ddd
꼴인 고정 소수점 표기법으로 인수를 출력합니다.
‘%e’ 변환은 [-
]d.
ddde
[+
|-
]dd
꼴인 지수 표기법으로 인수를 출력합니다. 소수점 자릿수는 지정한 정밀도에 따릅니다. 지수는 어제나 적어도 두자리 숫자로 구성됩니다. ‘%E’
변환은 지수를 ‘e’가 아닌 ‘E’으로 표기한다는 점만 빼면 ‘%e’와
똑같습니다.
‘%g’ 및 ‘%G’ 변환은 지수가 -4 이하 또는 지수가 정밀도 이상일 때는 각각 ‘%e’ 및 ‘%E’ 방식으로 인수를 출력하고, 지수가 -4 초과 또는 지수가 정밀도 미만일 때는 ‘%f’ 방식으로 인수를 출력합니다. 소수부에서 끝에 따라 붙은 0은 지우고, 소수점 문자는 소수점 아래 숫자가 있어야 나타납니다.
아래 표지는 작동 방식을 고치는데 씁니다.
결과를 기록란에서 왼쪽 정렬합니다. 보통 결과는 오른쪽 정렬합니다.
결과에 늘 양의 부호 또는 음의 부호를 더합니다.
결과가 양의 부호 또는 음의 부호로 시작하지 않을 때 띄어쓰기 문자를 대신 넣습니다. ‘+’ 표지가 결과에 부호가 있음을 보장하기 때문에, ‘+’와 ‘ ’를 함께 쓰면 무시합니다.
소수점 아래 숫자가 없더라도 결과에 언제나 소수점이 포함되도록 합니다. ‘%g’ 및 ‘%G’ 변환에서는 소수부에서 끝에 따라 붙은 0을 지우지 않고 남겨두는 기능도 있습니다.
띄어쓰기 대신 0으로 기록란을 채웁니다. 부호 뒤에 0을 붙입니다. ‘-’ 표지와 함께 지정하거나 또는 정밀도를 지정하면, 이 표지를 무시합니다.
정밀도는 ‘%f’, ‘%e’, ‘%E’ 변환에서
소수점 자리수를 지정합니다. 이 변환에서 기본 정밀도는 6
입니다. 정밀도를 0
이라고 명시하면,
소수점을 아예 쓰지 않습니다. ‘%g’ 및 ‘%G’ 변환에서의 정밀도는 출력할 유효
숫자 개수를 지정합니다. 유효 숫자는 소수점 위의 첫 번째 숫자부터 소수점 아래 마지막 숫자까지 입니다. ‘%g’ 및 ‘%G’
변환에서 정밀도를 0
으로 지정하거나 또는 지정하지 않으면, 1
을 쓴 것처럼 작동합니다. 출력할
값이 지정한 정밀도 안에 꼭 들어맞지 않으면 가장 가까운 수로 반올림하여 정밀도를 맞춥니다.
다음: 그 밖의 출력 변환, 이전: 정수 변환, 상위 문서: C 형식 입출력 함수 [차례][찾아보기]