태그: C# 형식

C#은 강력한 형식의 언어로 모든 변수와 상수 및 메서드 시그니처의 입력 매개변수와 반환 값 등의 형식을 지정해야 합니다.

형식은 분류 방법에 따라 기본 형식과 사용자 정의 형식으로 나눌 수도 있으며 값 형식, 참조 형식, 포인터 형식으로 구분할 수도 있습니다.

기본 형식에는 true와 false를 값으로 가질 수 있는 bool 형식과 유니코드 문자를 표현하기 위한 char 형식, 정수와 실수를 표현하기 위한 여러 가지 형식과 문자열을 위해 string과 모든 형식의 기반 형식인 object를 제공하고 있습니다. 기본 형식으로 제공되는 형식 중에 string과 object는 참조 형식이며 나머지 형식들은 모두 value 형식입니다.

C# 형식 .NET Framework형식 설명 및 표현 범위
bool System.Boolean 논리 값을 표현 (true 혹은 false)
byte System.Byte 부호 없는 8비트 정수(0~255)
sbyte System.SByte 부호 있는 8비트 정수(-128~127)
char System.Char 유니코드 16비트 문자
decimal System.Decimal 128비트 데이터 형식
double System.Double 7개의 자릿수를 갖는 실수 (근사치)
float System.Single 15~16개의 자릿수를 갖는 실수(근사치)
int System.Int32 부호 있는 32비트 정수
uint System.UInt32 부호 없는 32비트 정수
long System.Int64 부호 있는 64비트 정수
ulong System.UInt64 부호 없는 64비트 정수
object System.Object 모든 형식의 기반 형식
short System.Int16 부호 있는 16비트 정수
ushort System.UInt16 부호 없는 16비트 정수
string System.String 0개 이상의 유니코드 문자로 구성된 시퀀스

C#에서는 기본 형식외에 필요한 형식을 정의하여 사용할 수 있습니다. 사용자 정의 형식은 표현할 수 있는 값의 종류를 정의하는 열거형과 여러가지 멤버를 캡슐화할 수 있는 구조체와 클래스 등이 있습니다.

C#의 형식은 값 형식과 참조 형식으로 나눌 수 있는데 구조체와 열거형은 값 형식이고 클래스는 참조 형식입니다. C#에서 값 형식들은 변수들이 독립적으로 사용됩니다. 이에 반해 참조 형식은 변수들이 관리화 힙에 할당된 개체를 참조하여 사용되므로 하나의 개체를 사용하는 여러 개의 변수가 있을 수 있습니다. 그리고 참조 형식의 개체는 관리화 힙에 할당되어 .NET에 의해 생명 주기를 관리되어 형식 안정성을 제공합니다.


3.1 object

3.2 Boxing 과 UnBoxing

3.3 배열

3.4 string