Skip to content

Latest commit

 

History

History
121 lines (103 loc) · 3.06 KB

001. 자료형 - 값 형식 - 정수 형식.md

File metadata and controls

121 lines (103 loc) · 3.06 KB

자료형 - 값 형식 - 정수 형식

정수 형식

sbyte: 부호 있는 8비트 정수
MIN_VALUE: -128
MAX_VALUE: 127
.NET TYPE: System.SByte
byte: 부호 없는 8비트 정수
MIN_VALUE: 0
MAX_VALUE: 255
.NET TYPE: System.Byte
short: 부호 있는 16비트 정수
MIN_VALUE: -32,768
MAX_VALUE: 32,767
.NET TYPE: System.Int16
ushort: 부호 없는 16비트 정수
MIN_VALUE: 0
MAX_VALUE: 65,535
.NET TYPE: System.UInt16
int: 부호 있는 32비트 정수
MIN_VALUE: –2,147,483,648
MAX_VALUE: 2,147,483,647
.NET TYPE: System.Int32
uint: 부호 없는 32비트 정수
MIN_VALUE: 0
MAX_VALUE: 4,294,967,295
.NET TYPE: System.UInt32
long: 부호 있는 64비트 정수
MIN_VALUE: –9,223,372,036,854,775,808
MAX_VALUE: 9,223,372,036,854,775,807
.NET TYPE: System.Int64
ulong: 부호 없는 64비트 정수
MIN_VALUE: 0
MAX_VALUE: 18,446,744,073,709,551,615
.NET TYPE: System.UInt64
nint: 부호 있는 32비트 정수 또는 부호 있는 64비트 정수
MIN_VALUE: 32비트 운영체제의 경우 int.MIN_VALUE,
           64비트 운영체제의 경우 long.MIN_VALUE
MAX_VALUE: 32비트 운영체제의 경우 int.MAX_VALUE,
           64비트 운영체제의 경우 long.MAX_VALUE
.NET TYPE: System.IntPtr
unint: 부호 없는 32비트 정수 또는 부호 없는 64비트 정수
MIN_VALUE: 32비트 운영체제의 경우 uint.MIN_VALUE,
           64비트 운영체제의 경우 ulong.MIN_VALUE
MAX_VALUE: 32비트 운영체제의 경우 uint.MAX_VALUE,
           64비트 운영체제의 경우 ulong.MAX_VALUE
.NET TYPE: System.UIntPtr

자료형 중 정수 형식에는 sbyte, byte, short, ushort, int, uint, long, ulong, nint, unint가 있습니다. 그 중 nint와 unint는 운영체제 별로 다른 크기를 가질 수 있도록 한 특수한 자료형입니다.

왜 byte만 sbyte지?

정수 형식과 접미사

  1. 접미사가 없는 경우 크기에 따라 다음 순서를 우선순위로 하여 타입이 결정됩니다.
    • int
    • uint
    • long
    • ulong
  2. 접미사가 U 또는 u 인경우 다음 순서를 우선순위로 하여 타입이 결정됩니다.
    • uint
    • ulong
  3. 접미사가 L 또는 l인 경우 다음 순서를 우선순위로 하여 타입이 결정됩니다.
    • long
    • ulong
  4. 접미사가 UL, Ul, ul, uL, LU, Lu, lu, lU인 경우 다음 순서를 우선순위로 하여 타입이 결정됩니다.
    • ulong

정수 리터럴과 접두사

  1. 접두사가 없는 경우 10진수로 결정됩니다.

    int decimalValue = 0;
  2. 접두사가 0x 또는 0X인 경우 16진수로 결정됩니다.

    int hexValue = 0x0;
  3. 접두사가 0b 또는 0B인 경우 2진수로 결정됩니다.

    int binaryValue = 0b0;

8진수는 없나?

정수 형식과 숫자 구분 기호

숫자 구분 기호인 _를 이용하여 숫자를 보기 좋게 변형할 수 있습니다.

int number = 100_000_000;
int hexNumber = 0x_ff_f_ff__f;