NumPut

지정된 주소 + 오프셋에 이진 형식으로 숫자를 저장합니다.

NumPut(Number, VarOrAddress [, Offset = 0][, Type = "UPtr"])
선택

매개변수

Number

저장할 숫자.

VarOrAddress

메모리 주소 또는 변수. VarOrAddressMyVar와 같은 변수이면, 변수의 문자열 버퍼의 주소가 사용됩니다. 이것은 보통 &MyVar를 건네는 것과 동등하지만, "&"를 생략하면 수행성능이 향상되고 목표 주소 + 오프셋이 유효하다고 확신할 수 있습니다.

변수에 목표 주소가 들어 있다면 변수 참조를 건네지 마십시오; 그럴 경우, MyVar+0와 같은 표현식을 건네십시오.

Offset

목표 주소를 결정하기 위해 VarOrAddress에 더해지는 - 바이트 단위 - 오프셋.

Type

다음 문자열 중 하나 (생략하면 UPtr이 기본값):
UInt, Int, Int64, Short, UShort, Char, UChar, Double, Float, Ptr or UPtr

DllCall과 다르게, 이것들은 기호 문자열로 사용될 때 반드시 따옴표로 둘러야 합니다.

자세한 것은 DllCall Types를 참조하십시오.

반환 값

목표 주소가 유효하지 않으면, 빈 문자열이 반환됩니다. 그렇지만, 어떤 무효한 주소는 그대로 탐지할 수 없으므로, 예상치 못한 행위를 야기할 수 있습니다.

그렇지 않으면, 방금 씌여진 항목의 오른쪽 주소가 반환됩니다. 이것은 예를 들어 DllCall에 사용할 구조체에서 다른 유형의 숫자를 연속적으로 쓸 때 보통 사용됩니다.

총평

정수가 너무 커서 지정된 Type에 맞지 않으면, 제일 중요한 비트(MSB)가 무시됩니다; 예, NumPut(257, var, 0, "Char")는 숫자 1을 저장합니다.

매개변수가 세 개만 있으면, 세 번째 매개변수는 Offset 또는 Type이 될 수 있습니다. 예를 들어, NumPut(x, var, "int")는 유효합니다.

관련 항목

NumGet, DllCall, VarSetCapacity