C#

C# 필수 기초: 데이터 타입과 변수 선언 완벽 가이드

로기221 2025. 5. 9. 09:37
728x90
반응형

C#의 기본 데이터 타입과 변수 선언 방법

C#은 강력한 타입 시스템을 갖추고 있으며, 다양한 기본 데이터 타입을 제공합니다.

 

기본 데이터 타입(Primitive Types)

C#의 기본 데이터 타입은 다음과 같습니다:


 

데이터타입 .NET 형식 범위 설명
sbyte System.SByte -128 ~ 127 부호 있는 8비트 정수
byte System.Byte 0 ~ 255 부호 없는 8비트 정수
short System.Int16 -32,768 ~ 32,767 부호 있는 16비트 정수
ushort System.UInt16 0 ~ 65,535 부호 없는 16비트 정수
int System.Int32 -2,147,483,648 ~ 2,147,483,647 부호 있는 32비트 정수
uint System.UInt32 0 ~ 4,294,967,295 부호 없는 32비트 정수
long System.Int64 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 부호 있는 64비트 정수
ulong System.UInt64 0 ~ 18,446,744,073,709,551,615 부호 없는 64비트 정수
float System.Single ±1.5e-45 ~ ±3.4e38 32비트 부동 소수점
double System.Double ±5.0e-324 ~ ±1.7e308 64비트 부동 소수점
decimal System.Decimal ±1.0 × 10^-28 ~ ±7.9 × 10^28 128비트 고정 소수점
char System.Char U+0000 ~ U+ffff 유니코드 16비트 문자
string System.String - 유니코드 문자열
bool System.Boolean true/false 논리값

 

변수 선언과 초기화

C#에서 변수를 선언할 때는 데이터 타입을 명시해야 합니다. 변수는 선언과 동시에 초기화하거나, 나중에 값을 할당할 수 있습니다.

// 변수 선언과 초기화
int age = 25;
double height = 175.5;
string name = "홍길동";
bool isStudent = true;

// 변수 선언 후 값 할당
int score;
score = 95;

 

변수 선언과 정의의 차이

C#에서는 변수의 선언과 정의를 구분합니다:

 

- 변수 선언: 변수의 이름과 데이터 타입을 명시하는 것입니다.

int number;


- 변수 정의(할당)
: 선언된 변수에 값을 대입하는 것입니다.

number = 10;

 

C#에서는 변수를 사용하기 전에 반드시 초기화해야 합니다. 초기화하지 않은 변수를 사용하면 컴파일 오류가 발생합니다.

 

 

값 타입과 참조 타입

C#의 변수는 크게 값 타입(Value Type)과 참조 타입(Reference Type)으로 나뉩니다:

  • 값 타입(Value Type): 값 자체가 스택 영역에 할당됩니다. 기본 데이터 타입(int, float, bool 등)이 여기에 해당합니다.
  • 참조 타입(Reference Type): 값은 힙 영역에 할당되고, 스택에는 그 주소를 저장합니다. 클래스, 인터페이스, 배열, 문자열 등이 여기에 해당합니다.

데이터 타입의 기본값

C#의 데이터 타입은 기본값을 가지고 있습니다:

int i;      // 기본값: 0
long l;     // 기본값: 0
float f;    // 기본값: 0
double d;   // 기본값: 0
decimal m;  // 기본값: 0
string s;   // 기본값: null
bool b;     // 기본값: false
char c;     // 기본값: '\0'

 

 

널 가능 값 타입(Nullable Types)

C#에서는 값 타입에 null을 할당할 수 있는 널 가능 값 타입을 제공합니다:

int? nullableInt = null;
nullableInt = 10;

 

 

이상으로 C#의 기본 데이터 타입 및 변수 선언 방법에 대해 알아보았습니다.

이 주제는 C# 프로그래밍의 기초를 다지는 데 중요한 개념이므로, 자세히 다루시면 큰 도움이 될 것입니다.!!

728x90
반응형