회사소개
블로그
DataSketchers

전체 메뉴

회사소개
사업영역
D-SKET
웹빌더CanvasEvents
고객사
블로그
위키
보도자료
ESG
Topics
기술 스택언어 · 런타임Zig ›››
  • Zig
    • [Comments] [§]
    • @constCast
    • @ctz
    • @cVaArg
    • @cVaCopy
    • cVaEnd — C 매크로 `va_end` 구현
    • @cVaStart
    • @divExact
    • @divFloor — 바닥 나눗셈
    • @divTrunc — 정수 나눗셈, 0을 향해 버리기
    • @divCeil — 올림 나눗셈
    • 할당
    • @embedFile
    • @enumFromInt — 정수를 enum 값으로 바꾸기
    • 오류 값 되돌리기
    • @errorName
    • @errorReturnTrace — 에러 리턴 추적 스택 가져오기
    • @errorCast
    • @export 내장 함수
    • @extern
    • @field
    • @fieldParentPtr — 필드 포인터로 부모 구조체·유니온 포인터 얻기
    • Test 선언
    • @FieldType — 구조체·공용체의 필드 타입 알아내기
    • @floatCast — float 타입 간 형변환
    • @floatFromInt
    • @frameAddress
    • @fromBackingInt — 백킹 정수로 값 다시 만들기
    • @hasDecl — 네임스페이스에 선언이 있는지 확인하기
    • @hasField
    • @setRuntimeSafety — 런타임 안전 검사 켜고 끄기
    • @import
    • 테스트 실패 다루기
    • @intCast
    • @intFromBool
    • @intFromEnum
    • `@intFromError` — 에러를 정수로 바꾸기
    • @intFromFloat
    • @intFromPtr
    • @enumFromInt: 정수를 enum 값으로 바꾸기
    • 정수를 오류로 변환하기
    • 정수를 부동소수점으로 바꾸기
    • @intFromPtr — 포인터를 정수 주소로 바꾸기
    • 테스트 건너뛰기
    • @max
    • @memcpy — 메모리 영역을 다른 영역으로 복사하기
    • @memmove
    • @memset — 메모리 영역을 한 값으로 채우기
    • @min — 가장 작은 값 고르기
    • @mod — 나머지 연산, 바닥 나눗셈 기준
    • @mulWithOverflow
    • @panic — 프로그램을 의도적으로 중단시키는 내장 함수
    • @popCount — 정수에서 켜진 비트 세기
    • 메모리 누수 리포트
    • @prefetch — 메모리를 미리 읽어와서 성능만 챙기는 내장 함수
    • @ptrCast — 포인터 타입을 다른 타입으로 바꾸기
    • @ptrFromInt
    • PtrNamespace
    • rerunError
    • @returnAddress — 함수가 돌아갈 때 실행될 주소 얻기
    • @select — 벡터 요소를 조건에 따라 골라 담기
    • @setCold
    • @setEvalBranchQuota — 컴파일 타임 실행의 역분기 한도를 직접 올려주는 내장 함수
    • 테스트 빌드 감지하기
    • @setFloatMode
    • @setRuntimeSafety
    • @shlExact
    • @shlWithOverflow
    • Calling Conventions
    • `@SpirvType` — SPIR-V 타입 만들기
    • 타입 정보 조회
    • @typeName — 타입의 문자열 이름 얻기
    • @TypeOf
    • 테스트 출력과 로깅
    • @reduce — 벡터를 스칼라로 줄이기
    • @shuffle
    • @splat — 배열·벡터의 모든 요소를 같은 값으로 채우기
    • @select — 벡터 요소를 조건에 따라 골라내는 내장 함수
    • 정수와 enum 사이의 형 변환
    • enum
    • @tagName
    • 에러 반환 추적(Error Return Traces) — 에러가 어디서부터 거슬러 왔는지
    • @typeInfo
    • 테스팅 네임스페이스
    • @typeName — 타입의 문자열 이름 얻기
    • 정렬
    • @backingInt — enum·packed 타입을 뒷받침하는 정수로
    • @bitSizeOf
    • 호출 규약
    • @errorName
    • 오류 유니언 타입
    • @Fn: 함수 타입을 직접 만들어 주는 내장 함수
    • 테스트 도구 문서화
    • 정수
    • @Int — 부호와 비트 폭을 지정해 정수 타입 만들기
    • `lib_name` — 이 소스(Zig 매뉴얼)에는 존재하지 않는 섹션
    • noalias
    • null
    • 옵셔널
    • Pointers
    • 기본 타입
    • 네임스페이스 레벨 변수
    • Zig 소개
    • Debug
    • ReleaseFast — 최적화 켜고 안전검사 끈 배포 빌드
    • ReleaseSafe — 최적화도 챙기고 안전 검사까지 유지하는 배포 빌드
    • ReleaseSmall — 산출물 크기 최우선으로 줄인 배포 빌드
    • 싱글 스레드 빌드
    • Reaching Unreachable Code — 도달해서는 안 되는 코드에 도달했을 때
    • 인덱스 범위를 벗어난 접근
    • Cast Negative Number to Unsigned Integer
    • Cast Truncates Data
    • 정수 오버플로
    • 지역 스코프 전역 변수
    • 완전 왼쪽 시프트 오버플로(Exact Left Shift Overflow)
    • 정확한 우측 시프트 오버플로
    • 0으로 나누기
    • Remainder Division by Zero — 0으로 나눗셈 나머지를 구하면
    • Exact Division Remainder — 정확히 나눠떨어질 때만 쓰는 나눗셈
    • null 언랩 시도
    • 에러 언랩 시도
    • 유효하지 않은 에러 코드
    • Invalid Enum Cast — 존재하지 않는 태그 값으로 enum을 만들면 어떻게 될까요?
    • 유효하지 않은 에러 셋 변환
    • 스레드 지역 변수
    • 잘못된 포인터 정렬
    • 잘못된 유니온 필드 접근
    • 범위를 벗어난 플로트는 정수로 캐스팅할 수 없어요
    • 포인터 캐스트 시 널(Null)이 유효하지 않을 때
    • 할당자(Allocator) 선택하기
    • Where are the bytes?
    • 힙 할당 실패
    • Recursion(재귀)
    • Lifetime and Ownership
    • 컴파일 변수
    • 지역 변수
    • 컴파일 모델
    • Zig 빌드 시스템
    • C 타입 기본형
    • C Translation CLI
    • 번역 실패
    • C Pointers
    • C 가변 인자 함수
    • C 라이브러리 내보내기
    • 오브젝트 파일 섞기
    • WebAssembly
    • 정수
    • Targets
    • Avoid Redundancy in Names
    • 완전히 한정된 네임스페이스에서 중복된 이름 피하기
    • 밑줄 접두사는 쓰지 않기
    • Whitespace
    • Names
    • 예제
    • 문서 주석 지침
    • Source Encoding
    • 키워드 참조
    • 부동소수점(Floats)
    • 부록
    • 연산자
    • 배열
    • 벡터(Vectors)
    • volatile
    • 정렬
    • Zig 표준 라이브러리
    • allowzero
    • Sentinel-Terminated Pointers
    • 슬라이스
    • 기본 필드 값
    • extern struct
    • packed struct
    • 구조체 이름 붙이기
    • 익명 구조체 리터럴(Anonymous Struct Literals)
    • 튜플(Tuples)
    • enum(열거형)
    • Hello World
    • Tagged union
    • extern 유니언
    • packed union — 메모리 배치가 정해진 공용체
    • 익명 유니언 리터럴
    • opaque - 내부 구조를 드러내지 않는 타입
    • 블록
    • Exhaustive Switching — switch는 모든 경우를 빠짐없이 다뤄야 해요
    • Enum 리터럴로 switch 쓰기
    • 오류에 대한 switch
    • 라벨이 붙은 switch
    • 주석
    • 인라인 스위치 프롱
    • 라벨이 붙은 while 반복문
    • 옵셔널과 함께 쓰는 while
    • while과 에러 유니온
    • inline while
    • for 반복문
    • if — 세 가지 상황을 한 문법으로 처리하는 조건식
    • defer
    • unreachable — 절대 도달해서는 안 되는 코드를 컴파일러에게 알려줘요
    • noreturn
    • 네임스페이스
    • 값에 의한 전달 파라미터
    • 함수 매개변수 타입 추론
    • inline fn
    • Function Reflection
    • 오류(Errors)
    • Optionals
    • 캐스팅
    • Zero Bit Types
    • Result Location Semantics
    • 컴파일타임
    • 식별자
    • 출력 제약 조건
    • 입력 제약
    • Clobbers
    • Global Assembly
    • Atomics
    • Async Functions(비동기 함수)
    • `@addrSpaceCast` — 포인터를 주소 공간 사이에서 변환하기
    • @addWithOverflow
    • `@alignCast` — 포인터의 정렬을 바꾸기
    • @alignOf
    • Primitive Types — Zig가 기본으로 제공하는 타입
    • 타입 변환용 내장 함수 `@as`
    • @atomicLoad — 포인터가 가리키는 값을 원자적으로 읽어요
    • @atomicRmw — 값을 원자적으로 바꾸고 예전 값을 돌려받기
    • @atomicStore
    • `@backingInt`
    • @bitCast — 타입은 바꾸되 비트 표현은 그대로
    • @bitOffsetOf
    • @bitSizeOf
    • @branchHint
    • @breakpoint
    • 원시 값(Primitive Values)
    • @mulAdd — 융합 곱셈-덧셈
    • @byteSwap — 바이트 순서 뒤집기
    • @bitReverse
    • @offsetOf
    • @call
    • @clz — 선두 0 비트 세기
    • @cmpxchgStrong — 강한 원자적 비교-교환 연산
    • @cmpxchgWeak
    • @compileError — 컴파일 에러 만들기
    • @compileLog
    • 문자열 리터럴과 유니코드 코드 포인트 리터럴
기술 스택언어 · 런타임Zig › › ›

@intFromPtr

목차
@intFromPtr본문더 알아보기

@intFromPtr

포인터를 그 주소 값으로 바꿔 주는 내장 함수예요.

출처: Zig Documentation

본문

@intFromPtr(value: anytype) usize

value를 포인터의 주소를 나타내는 usize로 바꿔 줘요. value는 *T 또는 ?*T가 될 수 있어요.

더 알아보기

반대 방향, 즉 주소 값을 포인터로 되돌리는 함수도 있어요.

  • @ptrFromInt
@intFromPtr본문더 알아보기
DataSketchers AI·데이터·디자인으로 기업의 디지털 전환을 지원합니다. 서울시립대학교 캠퍼스타운 창업기업
회사소개 사업영역 D-SKET 고객사 블로그 위키 보도자료 ESG 문의
© 데이터스케쳐스. All rights reserved. 사업자등록번호 349-81-03411