상세 컨텐츠

본문 제목

C# 기초 - 기본 자료형

프로그래밍 언어/C#

by 개살기 2024. 5. 15. 20:57

본문

 

C# 기초 첫 번째는 기본 자료형에 대해 알아보겠습니다.

1. 기본 자료형

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는 ' '안에 하나의 문자만 넣을 수 있습니다.

C# 코드 char _char = "a";
C# 코드 char _char = 'abcd';

" "를 사용하거나 여러 개의 문자를 넣으면 에러 표시가 납니다.

 

string은 " "안에 여러 개의 문자를 넣을 수 있습니다.

C# 코드 string _string = 'HelloWorld';

' '를 사용하면 에러 표시가 납니다. 문자 하나만 넣어도 이상 없습니다.

 

불린

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#' 카테고리의 다른 글

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

관련글 더보기