F# 기본 형식
F# 기본 형식 (Basic Types)
F# 프로그램은 거의 모든 곳에서 이 기본 형식들을 사용해요. 이 형식들은 F#에서 가장 근간이 되는 형식들이며, .NET 원시(primitive) 형식들의 상위 집합이기도 해요. 이름은 조금 낯설 수 있지만, 하나씩 표로 정리해 볼게요.
출처: https://learn.microsoft.com/en-us/dotnet/fsharp/language-reference/basic-types
본문
F#에 정의된 기본 형식들을 먼저 나열하고, 각 형식이 어떤 값 범위를 갖는지 살펴볼게요.
| 형식 | .NET 형식 | 설명 | 예시 |
|---|---|---|---|
bool |
Boolean |
값이 true 또는 false 중 하나예요. |
true/false |
uint8, byte |
Byte |
0부터 255까지의 값을 가져요. | 1uy |
int8, sbyte |
SByte |
-128부터 127까지의 값을 가져요. | 1y |
int16 |
Int16 |
-32768부터 32767까지의 값을 가져요. | 1s |
uint16 |
UInt16 |
0부터 65535까지의 값을 가져요. | 1us |
int32, int |
Int32 |
-2,147,483,648부터 2,147,483,647까지의 값을 가져요. | 1 |
uint32, uint |
UInt32 |
0부터 4,294,967,295까지의 값을 가져요. | 1u |
int64 |
Int64 |
-9,223,372,036,854,775,808부터 9,223,372,036,854,775,807까지의 값을 가져요. | 1L |
uint64 |
UInt64 |
0부터 18,446,744,073,709,551,615까지의 값을 가져요. | 1UL |
nativeint |
IntPtr |
부호 있는 정수로 표현하는 네이티브 포인터예요. | nativeint 1 |
unativeint |
UIntPtr |
부호 없는 정수로 표현하는 네이티브 포인터예요. | unativeint 1 |
decimal |
Decimal |
최소 28자리의 유효 숫자를 갖는 부동 소수점 형식이에요. | 1.0m |
float, double |
Double |
64비트 부동 소수점 형식이에요. | 1.0 |
float32, single |
Single |
32비트 부동 소수점 형식이에요. | 1.0f |
char |
Char |
유니코드 문자 값을 가져요. | 'c' |
string |
String |
유니코드 텍스트를 가져요. | "str" |
unit |
해당 없음 | 실제 값이 없다는 뜻이에요. 이 형식은 형식상 값이 하나뿐인데, 그 값은 ()로 표기해요. 이 unit 값 ()은 값이 필요한 자리지만 실제로 쓸 값이 없거나 의미가 없을 때 자리 표시자로 자주 사용돼요. |
() |
참고 — 64비트 정수 형식으로도 감당하기 어려운 큰 정수를 계산해야 한다면
bigint형식을 쓸 수 있어요. 다만bigint는 기본 형식으로 취급되지 않으며,System.Numerics.BigInteger의 약어(abbreviation)일 뿐이라는 점을 기억해 두세요.