반응형

데이터 타입에 대해 알아보겠습니다.

 

1. 정수 형식

C# 형식 / 키워드 범위 크기 .NET 형식
sbyte -128 ~ 127 부호 있는 8비트 정수 System.SByte
byte 0 ~ 255 부호 없는 8비트 정수 System.Byte
short –32,768 ~ 32,767 부호 있는 16비트 정수 System.Int16
ushort 0 ~ 65,535 부호 없는 16비트 정수 System.UInt16
int –2,147,483,648 ~ 2,147,483,647 부호 있는 32비트 정수 System.Int32
uint 0 ~ 4,294,967,295 부호 없는 32비트 정수 System.UInt32
long –9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 부호 있는 64비트 정수 System.Int64
ulong 0 ~ 18,446,744,073,709,551,615 부호 없는 64비트 정수 System.UInt64

 

다음과 같이 사용할 수 있습니다.

int num = 1234;

 

정수 리터럴은 10진수, 16진수, 2진 리터럴로 다음과 같이 지정할 수 있습니다.

(리터럴 : 변하지 않는 데이터)

var decimalLiteral = 42;

var hexLiteral = 0x2A;

var binaryLiteral = 0b_0010_1010;

 

2. 부동 소수점 숫자 형식

C# 형식 / 키워드 근사 범위 전체 자릿수 .NET 형식
float ±1.5E−45 ~ ±3.4E38 ~6-9개 자릿수 System.Single
double ±5.0E−324 ~ ±1.7E308 ~15-17개 자릿수 System.Double
decimal ±1.0E-28 ~ ±7.9228E28 28-29개의 자릿수 System.Decimal

 

다음과 같이 사용할 수 있습니다.

double dbNum = 12.34;

 

부동 소수점 리터럴은 다음과 같이 지정할 수 있습니다.

d 또는 D 접미사는 리터럴을 double로 변환

f 또는 F 접미사는 리터럴을 float로 변환

m 또는 M 접미사는 리터럴 decimal로 변환

 

double dbNum = 12.34d;

float fNum = 12.34f;

decimal fNum = 12.34m;

 

3. char 형식

형식 범위 크기 .NET형식
char U+0000~U+FFFF 유니코드 16비트 문자 System.Char

 

4. enum 형식

열거형 데이터 타입으로 상수 집합으로 구성이 됩니다.

 

이렇게 정의 할 수 있습니다.

enum Day {Sun, Mon, Tue, Wed, Thu, Fri, Sat};

 

Sun가 0으로 시작되어, Mon에는 1, Tue에는 2와 같은 식으로 데이터가 정의됩니다.

 

그리고 이런 식으로 사용할 수 있습니다.

int x = (int)Day.Sat;

 

int형에 데이터를 넣기 이해서는 명시적 캐스트가 필요합니다.

 

 

5. bool 형식

부울 값인 true / false를 저정할 변수를 선언하는데 사용됩니다.

 

다음과 같이 사용할 수 있습니다.

bool bCheck = true;

 

 

6. Nullable 형식

기본적으로 값형식(int형 등)들은 null값을 가질 수 없습니다. 하지만 null값을 가지기 위해서는 nullable형식으로 만들면 됩니다.

 

값형식에 ?를 붙이거나, Nullable<int>로 null값을 가질 수 있는 데이터를 만들 수 있다. 

 

다음과 같이 사용합니다.

 

int? num1 = null

Nullable<int> num2= null;

 

반응형

'개발공부 > C#' 카테고리의 다른 글

[C#] yield  (0) 2019.10.14
[C#] 반복문  (0) 2019.10.13
[C#] 조건문  (0) 2019.10.12
[C#] 연산자  (0) 2019.10.10
[C#] 직렬화(Serialization)  (2) 2019.07.16

+ Recent posts