@bitSizeOf
@bitSizeOf
@bitSizeOf는 타입이 메모리에서 차지하는 비트 수를 돌려주는 내장 함수예요. 특히 이 타입을 packed struct/packed union의 필드로 쓴다고 가정할 때가 핵심인데, 일반 @sizeOf가 바이트 단위로 재는 것과 달리 @bitSizeOf는 비트 단위로 재는 함수라고 이해하면 쉬워요.
본문
@bitSizeOf(comptime T: type) comptime_int
이 함수는 T를 packed struct/packed union의 필드로 넣었을 때 메모리에 저장하는 데 필요한 비트 수를 반환합니다. 결과는 타깃에 따라 달라지는 컴파일 타임 상수예요.
한 가지 성격이 특이한 점은, 이 함수가 런타임 기준으로 크기를 재는 함수라는 거예요. 그래서 런타임에 허용되지 않는 타입들, 대표적으로 comptime_int나 type 같은 타입은 결과가 0이 됩니다.
같이 보기
더 알아보기
@sizeOf— 타입이 메모리에서 차지하는 바이트 수를 구하는 내장 함수 (@bitSizeOf는 비트 단위)@typeInfo— 타입의 컴파일 타임 메타데이터를 조회하는 내장 함수packed struct,packed union— 비트 단위 배치를 다룰 때@bitSizeOf가 유용하게 쓰이는 곳