UInteger 데이터 형식
0에서 4,294,967,295 사이의 값 범위에 있는 부호 없는 32비트(4바이트) 정수를 보유합니다.
설명
UInteger
데이터 형식은 가장 효율적인 데이터 너비에서 가장 큰 부호 없는 값을 제공합니다.
UInteger
의 기본값은 0입니다.
리터럴 할당
10진수 리터럴, 16진수 리터럴, 8진수 리터럴 또는(Visual Basic 2017부터) 2진 리터럴을 할당하여 UInteger
변수를 선언하고 초기화할 수 있습니다. 정수 리터럴이 UInteger
범위를 벗어나는 경우(즉 UInt32.MinValue보다 작거나 UInt32.MaxValue보다 큰 경우) 컴파일 오류가 발생합니다.
다음 예제에서는 10진수, 16진수 및 이진 리터럴로 표현된 3,000,000,000과 같은 정수가 UInteger
값에 할당됩니다.
Dim uintValue1 As UInteger = 3000000000ui
Console.WriteLine(uintValue1)
Dim uintValue2 As UInteger = &HB2D05E00ui
Console.WriteLine(uintValue2)
Dim uintValue3 As UInteger = &B1011_0010_1101_0000_0101_1110_0000_0000ui
Console.WriteLine(uintValue3)
' The example displays the following output:
' 3000000000
' 3000000000
' 3000000000
참고 항목
16진수 리터럴을 나타내려면 접두사 &h
또는 &H
을(를) 사용하고, 이진수 리터럴을 나타내려면 접두사 &b
또는 &B
을(를) 사용하고, 8진수 리터럴을 나타내려면 접두사 &o
또는 &O
을(를) 사용합니다. 10진수 리터럴에는 접두사가 없습니다.
Visual Basic 2017부터 다음 예와 같이 밑줄 문자 _
을 숫자 구분 기호로 사용하여 가독성을 높일 수도 있습니다.
Dim uintValue1 As UInteger = 3_000_000_000ui
Console.WriteLine(uintValue1)
Dim uintValue2 As UInteger = &HB2D0_5E00ui
Console.WriteLine(uintValue2)
Dim uintValue3 As UInteger = &B1011_0010_1101_0000_0101_1110_0000_0000ui
Console.WriteLine(uintValue3)
' The example displays the following output:
' 3000000000
' 3000000000
' 3000000000
Visual Basic 15.5부터 밑줄 문자(_
)를 접두사와 16진수, 이진수, 8진수 사이의 선행 구분 기호로 사용할 수도 있습니다. 예시:
Dim number As UInteger = &H_0F8C_0326
선행 구분 기호로 밑줄 문자를 사용하려면 Visual Basic 프로젝트(*.vbproj) 파일에 다음 요소를 추가해야 합니다.
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
자세한 내용은 Visual Basic 언어 버전 선택을 참조하세요.
숫자 리터럴에는 다음 예와 같이 UInteger
데이터 형식을 나타내기 위해 UI
또는 ui
형식 문자도 포함될 수 있습니다.
Dim number = &H_0FAC_14D7ui
프로그래밍 팁
작은 정수 형식(UShort
, Short
, Byte
및 SByte
)은 더 적은 비트를 사용하더라도 로드, 저장 및 가져오는 데 더 많은 시간이 걸리므로 UInteger
및 Integer
데이터 형식은 32비트 프로세서에서 최적의 성능을 제공합니다.
음수.
UInteger
는 부호 없는 형식이므로 음수를 나타낼 수 없습니다.UInteger
형식으로 평가되는 식에 단항 빼기(-
) 연산자를 사용하는 경우 Visual Basic에서는 먼저 식을Long
으로 변환합니다.CLS 준수.
UInteger
데이터 형식은 CLS(공용 언어 사양)의 일부가 아니므로 CLS 규격 코드는 이를 사용하는 구성 요소를 사용할 수 없습니다.Interop 고려 사항. .NET Framework용으로 작성되지 않은 구성 요소(예: 자동화 또는 COM 개체)와 인터페이스하는 경우
uint
와 같은 형식은 다른 환경에서 다른 데이터 너비(16비트)를 가질 수 있다는 점에 유의해야 합니다. 이러한 구성 요소에 16비트 인수를 전달하는 경우 관리되는 Visual Basic 코드에서UInteger
대신UShort
로 선언합니다.Widening.
UInteger
데이터 형식은Long
,ULong
,Decimal
,Single
및Double
로 확장됩니다. 이는 System.OverflowException 오류 발생 없이UInteger
를 이러한 형식 중 하나로 변환할 수 있음을 의미합니다.형식 문자. 리터럴 형식 문자
UI
을(를) 리터럴에 추가하면UInteger
데이터 형식이 됩니다.UInteger
에는 식별자 형식 문자가 없습니다.Framework 형식. .NET Framework에서 해당하는 형식은 System.UInt32 구조체입니다.
참고 항목
.NET