Long 데이터 형식 (Visual Basic)Long data type (Visual Basic)

-9223372036854775808에서 9223372036854775807 (9.2 ... E + 18) 까지의 값 범위에 해당 하는 부호 있는 64 비트 (8 바이트) 정수를 저장 합니다.Holds signed 64-bit (8-byte) integers ranging in value from -9,223,372,036,854,775,808 through 9,223,372,036,854,775,807 (9.2...E+18).

설명Remarks

데이터 형식을 사용 하 여 Long 너무 커서 데이터 형식에 맞지 않는 정수를 포함할 수 Integer 있습니다.Use the Long data type to contain integer numbers that are too large to fit in the Integer data type.

Long의 기본값은 0입니다.The default value of Long is 0.

리터럴 할당Literal assignments

Long10 진수 리터럴, 16 진수 리터럴, 8 진수 리터럴 또는 (Visual Basic 2017부터) 이진 리터럴을 할당 하 여 변수를 선언 하 고 초기화할 수 있습니다.You can declare and initialize a Long variable by assigning it a decimal literal, a hexadecimal literal, an octal literal, or (starting with Visual Basic 2017) a binary literal. 정수 리터럴이 Long 범위를 벗어나는 경우(즉 Int64.MinValue보다 작거나 Int64.MaxValue보다 큰 경우) 컴파일 오류가 발생합니다.If the integer literal is outside the range of Long (that is, if it is less than Int64.MinValue or greater than Int64.MaxValue, a compilation error occurs.

다음 예제에서는 10진수, 16진수 및 이진 리터럴로 표현된 4,294,967,296과 같은 정수가 Long 값에 할당됩니다.In the following example, integers equal to 4,294,967,296 that are represented as decimal, hexadecimal, and binary literals are assigned to Long values.

Dim longValue1 As Long = 4294967296
Console.WriteLine(longValue1)

Dim longValue2 As Long = &H100000000
Console.WriteLine(longValue2)

Dim longValue3 As Long = &B1_0000_0000_0000_0000_0000_0000_0000_0000
Console.WriteLine(longValue3)
' The example displays the following output:
'          4294967296
'          4294967296
'          4294967296

참고

접두사 또는를 사용 하 여 &h &H 16 진수 리터럴을 표시 하거나, 접두사 또는을 사용 하 여 이진 리터럴을 표시 하 고, 접두사 또는를 사용 하 여 &b &B &o &O 8 진수 리터럴을 나타냅니다.You use the prefix &h or &H to denote a hexadecimal literal, the prefix &b or &B to denote a binary literal, and the prefix &o or &O to denote an octal literal. 10진수 리터럴에는 접두사가 없습니다.Decimal literals have no prefix.

Visual Basic 2017부터 _ 다음 예제와 같이 밑줄 문자를 자릿수 구분 기호로 사용 하 여 가독성을 높일 수도 있습니다.Starting with Visual Basic 2017, you can also use the underscore character, _, as a digit separator to enhance readability, as the following example shows.

Dim longValue1 As Long = 4_294_967_296
Console.WriteLine(longValue1)

Dim longValue2 As Long = &H1_0000_0000
Console.WriteLine(longValue2)

Dim longValue3 As Long = &B1_0000_0000_0000_0000_0000_0000_0000_0000
Console.WriteLine(longValue3)
' The example displays the following output:
'          4294967296
'          4294967296
'          4294967296

Visual Basic 15.5부터 _ 접두사와 16 진수, 이진 또는 8 진수 숫자 사이의 선행 구분 기호로 밑줄 문자 ()를 사용할 수도 있습니다.Starting with Visual Basic 15.5, you can also use the underscore character (_) as a leading separator between the prefix and the hexadecimal, binary, or octal digits. 예를 들면 다음과 같습니다.For example:

Dim number As Long = &H_0FAC_0326_1489_D68C

선행 구분 기호로 밑줄 문자를 사용하려면 Visual Basic 프로젝트(*.vbproj) 파일에 다음 요소를 추가해야 합니다.To use the underscore character as a leading separator, you must add the following element to your Visual Basic project (*.vbproj) file:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

자세한 내용은 Visual Basic 언어 버전 설정을참조하십시오.For more information see setting the Visual Basic language version.

L다음 예제와 같이 숫자 리터럴은 형식 문자 를 포함 하 여 데이터 형식을 나타낼 수도 있습니다 Long .Numeric literals can also include the L type character to denote the Long data type, as the following example shows.

Dim number = &H_0FAC_0326_1489_D68CL

프로그래밍 팁Programming tips

  • Interop 고려 사항.Interop Considerations. .NET Framework 용으로 작성 되지 않은 구성 요소 (예: Automation 또는 COM 개체)와 상호 작용 하는 경우 Long 다른 환경에서는의 데이터 너비 (32 비트)가 다르다는 점에 주의 해야 합니다.If you are interfacing with components not written for the .NET Framework, for example Automation or COM objects, remember that Long has a different data width (32 bits) in other environments. 이러한 구성 요소에 32 비트 인수를 전달 하는 경우 Integer Long 새 Visual Basic 코드에서 대신로 선언 합니다.If you are passing a 32-bit argument to such a component, declare it as Integer instead of Long in your new Visual Basic code.

  • 넓혀.Widening. Long데이터 형식은, 또는로 확대 변환 Decimal Single Double 됩니다.The Long data type widens to Decimal, Single, or Double. 이는 Long 오류 발생 없이 System.OverflowException를 이러한 형식 중 하나로 변환할 수 있음을 의미합니다.This means you can convert Long to any one of these types without encountering a System.OverflowException error.

  • 문자를 입력 합니다.Type Characters. 리터럴 형식 문자 L를 리터럴에 추가하면 Long 데이터 형식이 됩니다.Appending the literal type character L to a literal forces it to the Long data type. 식별자 형식 문자 &를 식별자에 추가하면 Long가 됩니다.Appending the identifier type character & to any identifier forces it to Long.

  • Framework 형식.Framework Type. .NET Framework에서 해당하는 형식은 System.Int64 구조체입니다.The corresponding type in the .NET Framework is the System.Int64 structure.

참고 항목See also