@intFromPtr — 포인터를 정수 주소로 바꾸기
@intFromPtr — 포인터를 정수 주소로 바꾸기
코드에서 포인터 값을 다루다 보면, 그 포인터가 실제로 가리키는 메모리 주소를 숫자로 확인하고 싶을 때가 있어요. @intFromPtr은 포인터 값을 그 주소에 해당하는 usize 정수로 바꿔 주는 내장 함수예요. 반대로 정수 주소를 다시 포인터로 되돌리고 싶을 땐 @ptrFromInt을 쓰면 돼요.
본문
함수 시그니처는 이렇게 생겼어요.
@intFromPtr(value: anytype) usize
value를 포인터의 주소를 나타내는 usize로 변환해요. 이때 value는 *T 또는 ?*T 타입이 될 수 있어요. 즉, 단일 포인터든 nullable 포인터든 그 값이 담고 있는 메모리 주소를 정수로 꺼내 준답니다.
관련 함수로는 다음이 있어요.
- @ptrFromInt — 정수(주소)를 다시 포인터로 변환할 때 씁니다.
더 알아보기 (Learn more)
- @ptrFromInt: 이번에 본
@intFromPtr과 반대 방향으로, 정수 주소를 포인터로 바꾸는 내장 함수예요.