SMALL
C#에 제공하는 자료형은 크게 4가지로 분류 할 수 있다.
1. 정수형
자료형 | 크기 | 표현 가능 범위 |
sbyte | 부호 있는 8비트 정수 | -128~127 |
byte | 부호 없는 8비트 정수 | 0~255 |
short | 부호 있는 16비트 정수 | -32,768~32767 |
ushort | 부호 없는 16비트 정수 | 0~65,535 |
int | 부호 있는 32비트 정수 | -2,147,483,648~2,147,483,647 |
uint | 부호 없는 32비트 정수 | 0~4,294,967,295 |
long | 부호 있는 64비트 정수 | -9,223,372,036,854,775,808~ 9,223,372,036,854,775,807 |
ulong | 부호 없는 64비트 정수 | 0~18,446,744,073,709,551,615 |
다양한 자료형이 존재하는 이유는 각각의 자료형마다 차지하는 메모리의 크기가 다르기 떄문이다. 어떠한 프로그램을 만들 때 그에 합당한 메모리에 맞는 자료형으로 구성해야 하는데 만든 프로그램에 비해 비교적 short나 그 이상의 자료형을 사용하게 된다면 불필요한 메모리의 낭비가 발생한다. 또한 프로그램의 크기가 커질수록 속도와 관리 측면에서 어려움이 발생할 수 있다. 따라서 알맞은 자료형을 선택하여 프로그램을 좀 더 가볍고 빠르게 만들기가 가능하다.
2.실수형
자료형 | 크기 | 표현 가능 범위 |
float | 32비트 (4바이트) | -3,402823e38~3.402823e38 |
double | 64비트 (8바이트) | -1.79769313486232e308~ 1.79769313486232e308 |
decimal | 128비트 (16비트) | +-1.0 x 10e-28to+-7.9228 x 10e28 |
실수형은 특성상 정확한 수의 표현이 아닌 근사치를 표현한다. 소수점 이하의 모든 수를 다 표현하는 것은 대부분 비효율적이기 때문이다. 이러한 이유로 실수형 자료는 아주 작지만 오차범위가 존재하게 된다. 단 한치의 오차도 소수의 오차범위를 허용 할 수 없는 경우라면 decimal을 선택한다. 단, decimal의 경우 모든 숫자형 자료 중에서 가장 느린 연산 속도를 가진 단점이 있다.
3.문자(열)형
자료형 | 크기 | 표현 가능 범위 |
char | 유니코드 16bit (2바이트) | U+0000 to U+FFFF |
string | 유니코드 16bit 조합 | 1,073,741,823개 문자의 나열 |
유니코드는 하나의 문자를 표현하기 위해 2바이트를 사용한다. 그리고 string은 정수형(int)이 허용하는 최대치까지 문자를 표현할 수 있으므로, string의 이론적인 한계는 1,073,741,823개 문자의 나열이다.
4.부울린형
자료형 | 크기 | 표현 가능 범위 |
bool | 8비트 (1바이트) | '참(true)' 혹은 '거짓(false)' |
오직 참과 거짓만을 따져야 하는 경우, 부울린형을 사용하는 것이 바람직하다. 메모리를 적게 사용하는 장점과 함께 논리를 단순화 할 수 있기 때문이다.
LIST
'일반' 카테고리의 다른 글
C# 기초 문법 정리 (0) | 2024.01.24 |
---|---|
localization 참고 (0) | 2024.01.24 |
VPN이란 (0) | 2024.01.23 |
파일명, 폴더명 특수문자 (0) | 2024.01.23 |
Next.js 13 이상 localization 적용하기 (0) | 2024.01.22 |