C# 기초 첫 번째는 기본 자료형에 대해 알아보겠습니다.
C# 기본 자료형은 정수형, 실수형, 문자형, 불린형 4가지가 있습니다.
| C# 형식/키워드 | 자료형 | 크기 | 범위 |
| sbyte | 정수형 | 1 byte ( 8 bit ) | -128 ~ 127 |
| byte | 0 ~ 255 | ||
| short | 2 byte ( 16 bit ) | -32,768 ~ 32,767 | |
| ushort | 0 ~ 65,535 | ||
| int | 4 byte ( 32 bit ) | -2,147,483,648 ~ 2,147,483,647 | |
| uint | 0 ~ 4,297,967,295 | ||
| long | 8 byte ( 64 bit ) | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 | |
| ulong | 0 ~ 18,446,744,073,709,551,615 | ||
| float | 실수형 | 4 byte ( 32 bit ) | (+,-)1.5 x 10e-45 ~ (+,-)3.4 x 10e38 |
| double | 8 byte ( 64 bit ) | (+,-)5.0 x 10e-324 ~ (+,-)1.7 x 10e308 | |
| decimal | 16 byte ( 128 bit ) | (+,-)1.0 x 10e-28 ~ (+,-)7.9 x 10e28 | |
| char | 문자형 | 유니코드 2 byte ( 16 bit ) | U+0000 ~ U+FFFF |
| string | 유니코드문자열 | 문자열 | |
| bool | 불린 | 1 byte ( 4 bit ) | true 또는 false |
분명 기본 자료형은 4가지라 했는데 형식이 14가지 적은 이유는 메모리 공간 효율을 높이기 위해서입니다.
예를 들면 만렙이 100인 게임에서 레벨을 저장하고 싶을 때 byte(1 byte) 가 아닌 int(4 byte) 타입으로 저장을 하면 byte를 썼을 때 보다 4배의 메모를 사용하게 됩니다.
메모리 공간은 한계가 있기 때문에 적절한 데이터 타입을 사용하시길 바랍니다.
namespace HelloWorld
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine($"sbyte.MaxValue : {sbyte.MaxValue}");
Console.WriteLine($"sbyte.MinValue : {sbyte.MinValue}");
Console.WriteLine($"byte.MaxValue : {byte.MaxValue}");
Console.WriteLine($"byte.MinValue : {byte.MinValue}");
Console.WriteLine($"short.MaxValue : {short.MaxValue}");
Console.WriteLine($"short.MinValue : {short.MinValue}");
Console.WriteLine($"ushort.MaxValue : {ushort.MaxValue}");
Console.WriteLine($"ushort.MinValue : {ushort.MinValue}");
Console.WriteLine($"int.MaxValue : {int.MaxValue}");
Console.WriteLine($"int.MinValue : {int.MinValue}");
Console.WriteLine($"uint.MaxValue : {uint.MaxValue}");
Console.WriteLine($"uint.MinValue : {uint.MinValue}");
Console.WriteLine($"long.MaxValue : {long.MaxValue}");
Console.WriteLine($"long.MinValue : {long.MinValue}");
Console.WriteLine($"ulong.MaxValue : {ulong.MaxValue}");
Console.WriteLine($"ulong.MinValue : {ulong.MinValue}");
Console.WriteLine($"float.MaxValue : {float.MaxValue}");
Console.WriteLine($"float.MinValue : {float.MinValue}");
Console.WriteLine($"double.MaxValue : {double.MaxValue}");
Console.WriteLine($"double.MinValue : {double.MinValue}");
Console.WriteLine($"decimal.MaxValue : {decimal.MaxValue}");
Console.WriteLine($"decimal.MinValue : {decimal.MinValue}");
}
}
}
결과
sbyte.MaxValue : 127
sbyte.MinValue : -128
byte.MaxValue : 255
byte.MinValue : 0
short.MaxValue : 32767
short.MinValue : -32768
ushort.MaxValue : 65535
ushort.MinValue : 0
int.MaxValue : 2147483647
int.MinValue : -2147483648
uint.MaxValue : 4294967295
uint.MinValue : 0
long.MaxValue : 9223372036854775807
long.MinValue : -9223372036854775808
ulong.MaxValue : 18446744073709551615
ulong.MinValue : 0
float.MaxValue : 3.4028235E+38
float.MinValue : -3.4028235E+38
double.MaxValue : 1.7976931348623157E+308
double.MinValue : -1.7976931348623157E+308
decimal.MaxValue : 79228162514264337593543950335
decimal.MinValue : -79228162514264337593543950335
정수형 실수형 범위 검증은 MinValue, MaxValue로 확인하시면 됩니다.
namespace HelloWorld
{
internal class Program
{
static void Main(string[] args)
{
char _char = 'a';
string _string = "HelloWorld";
Console.WriteLine($"_char : {_char}");
Console.WriteLine($"_string : {_string}");
}
}
}
결과
_char : a
_string : HelloWorld
char는 ' '안에 하나의 문자만 넣을 수 있습니다.


" "를 사용하거나 여러 개의 문자를 넣으면 에러 표시가 납니다.
string은 " "안에 여러 개의 문자를 넣을 수 있습니다.

' '를 사용하면 에러 표시가 납니다. 문자 하나만 넣어도 이상 없습니다.
namespace HelloWorld
{
internal class Program
{
static void Main(string[] args)
{
bool _bool1 = true;
bool _bool2 = false;
Console.WriteLine($"_bool1 : {_bool1}");
Console.WriteLine($"_bool2 : {_bool2}");
}
}
}
결과
_bool1 : True
_bool2 : False
불린은 true(참) 또는 false(거짓)만 넣을 수 있습니다. 다른 값을 넣으면 에러 표시가 납니다.
| C# 기초 - 증감연산자 (0) | 2024.05.16 |
|---|---|
| C# 기초 - 할당(대입) 연산자 (0) | 2024.05.16 |
| C# 기초 - 산술연산자 (2) | 2024.05.16 |
| C# 프로젝트 생성 및 HelloWorld (0) | 2024.05.14 |
| C# 비주얼스튜디오 설치 (0) | 2024.05.13 |