티스토리 뷰

C#/Function & Grammer

C# : 데이터 타입

채애 2021. 3. 31. 13:11

 

C# 은 .NET 프로그래밍 언어이기 때문에, .NET 데이터 타입을 사용한다.

C# 컴파일러는 C# 키워드로 된 데이터 타입을 컴파일 후 .NET 데이터 타입으로 변경한다.

 

 


1. 정수형 데이터 타입

 

변수의 메모리 크기는 바이트로 표현한다.

8 bit = 1 byte

 

 

 

* S가 붙음 : 부호가 있다 ( signed )

* U가 붙음 : 부호가 없다 ( unsigned )

C# 형식 / 키워드 표현 범위 메모리 크기 바이트
sbyte -128 ~ 127 부호 있는
8비트 정수
1 바이트
byte 0 ~ 255 부호 없는
8비트 정수
1 바이트
short -32,768 ~ 32,767 부호 있는
16비트 정수
2 바이트
ushort 0 ~ 65,535 부호 없는
16비트 정수
2 바이트
int -2,147,483,648
~
2,147,483,647
( 약 -21억 ~ 21억 )
부호 있는
32비트 정수
4 바이트
uint 0 ~ 4,294,967,295
( 약 42억 )
부호 없는
32비트 정수
4 바이트
long -9,223,372,036,854,775,808 
~
9,223,372,036,854,775,807
부호 있는
64비트 정수
8 바이트
ulong 0 ~ 18,446,744,073,709,551,615

부호 없는
64비트 정수
8 바이트

 

 

 

 

 

 

 


2. 실수형 데이터 타입

 

실수 float를 표현할 때 소수점 뒤에 f 를 붙인다.

 

표현범위는 근사범위이다.

 

C# 형식 / 키워드 표현 범위 메모리 크기 바이트
float ±1.5×10^-45  ~±3.4×10^38 ~6-9개 자릿수 4 바이트
double ±5.0×10^-324  ~±1.7×10^308 ~15-17개 자릿수 8 바이트
decimal ±1.0×10^-28  ~±7.9228×10^28 28-29개 자릿수 16 바이트

 

float a = 1.5f;
double b = 1.5;
decimal c = 1.5m;

 

 

 

 

 

 


3. 문자형 데이터 타입

 

char 형식 키워드는 유니코드 UTF-16 문자를 나타내는 .NET SYSTEM.Char 구조체 형식이다.

char 는 16비트 ( 2바이트 ) 유니코드 문자이다.

 

작은따옴표 ( ' ' ) 를 사용하여 한 문자를 할당한다.

C# 형식 / 키워드 표현 범위 바이트
char U+0000 ~ U+FFFF 2 바이트

 

char ch = 'a';

 

 

 

 

 

 

 


4. bool

 

bool 은 부울 값 ( true 또는 false ) 를 나타낸다.

부울 논리 연산자를 사용한다.

bool 형식의 기본값은 false 이다.

 

 

C# 형식 / 키워드 .NET 데이터 타입 설명
bool System.Boolean True or False

 

bool check = true;

Console.WriteLine(check ? "Checked" : "Not checked"); 	 // output: Checked
Console.WriteLine(false ? "Checked" : "Not checked"); 	 // output: Not checked

 

 

 

 

 

 

 


5. 문자열 데이터 타입

 

string 데이터 타입은 큰따옴표 ( " " ) 를 사용하여 문자열을 할당한다.

string 은 참조타입의 변수 종류이다.

값타입의 변수와 참조타입의 변수는 사용되는 메모리가 다르다.

 

 

* 값타입 : 스택 메모리

* 참조타입 : 힙 메모리

 

 

C# 형식 / 키워드 .NET 데이터 타입 설명
string SYSTEM.String 유니코드 문자열

 

string s = "HelloWorld";

 

 

 

 

 

 

 


6. 게임 캐릭터 기획 변수 예제

 

 

< 캐릭터의 정보 >

1. 캐릭터 이름 -   문자열

2. 캐릭터 레벨 -   최소 0 ~ 최대 255

3. 캐릭터 힘    -   최소 0 ~ 최대 10000

4. 캐릭터 민첩 -   최소 0 ~ 최대 500.00

5. 소유 금액    -   최소 0 ~ 최대 10억

6. 소유 코인    -   최소 0 ~ 최대 100억

 

 

 

string name;	// 캐릭터 이름 -   문자열

byte level;	// 캐릭터 레벨 -   최소 0 ~ 최대 255

ushort str;	// 캐릭터 힘    -   최소 0 ~ 최대 10000

float agilty;	// 캐릭터 민첩 -   최소 0 ~ 최대 500.00

uint money;	// 소유 금액    -   최소 0 ~ 최대 10억

ulong coin;	// 소유 코인    -   최소 0 ~ 최대 1000억

 

 

 

 

 

 

 


 

 

 

 

 

'C# > Function & Grammer' 카테고리의 다른 글

C# : 다운로드 / 프로젝트 생성  (0) 2021.03.22
댓글