C# 지수("E") 형식 지정자란?
C#에서 지수 표기법("E") 형식 지정자는 숫자를 과학적 표기법(scientific notation) 문자열로 변환합니다. 변환된 결과는 다음과 같은 형태를 갖습니다.
"-d.ddd…E+ddd"
또는
"-d.ddd…e+ddd"
여기서 각 부분의 의미는 다음과 같습니다.
- d − 숫자(0~9)를 나타냅니다.
- E 또는 e − 지수(exponent) 앞에 붙으며, 대문자 "E"를 사용하면 출력에도 대문자가, 소문자 "e"를 사용하면 소문자가 표시됩니다.
또한 형식 지정자 뒤에 숫자를 붙이면(예: "E10", "e10") 소수점 이하 자릿수를 원하는 만큼 지정할 수 있습니다.
사용 예제
아래 코드에서는 double형 숫자를 "E"와 "e" 형식 지정자로 변환하고, 자릿수를 지정한 경우도 함께 살펴볼 수 있습니다.
using System;
using System.Globalization;
class Demo {
static void Main() {
double d = 3452.7678;
Console.WriteLine(d.ToString("E", CultureInfo.InvariantCulture));
Console.WriteLine(d.ToString("E10", CultureInfo.InvariantCulture));
Console.WriteLine(d.ToString("e", CultureInfo.InvariantCulture));
Console.WriteLine(d.ToString("e10", CultureInfo.InvariantCulture));
}
}
실행 결과
3.452768E+003
3.4527678000E+003
3.452768e+003
3.4527678000e+003
결과 분석
위 실행 결과를 보면 몇 가지 특징을 확인할 수 있습니다.
- "E" 형식 지정자는 기본적으로 소수점 이하 6자리까지 표시합니다. (예: 3.452768E+003)
- "E10"처럼 정밀도를 지정하면 소수점 이하 10자리까지 표시됩니다. (예: 3.4527678000E+003)
- 소문자 "e"를 사용하면 지수 기호가 소문자로 출력됩니다. (예: 3.452768e+003)
- CultureInfo.InvariantCulture를 사용하면 문화권(culture)과 무관하게 일관된 형식으로 출력됩니다.