«type-punning» 태그된 질문


15
C와 C ++에서 연합의 목적
나는 이전에 편하게 노동 조합을 사용했다. 오늘 이 게시물을 읽었을 때 놀랐 으며이 코드를 알게되었습니다. union ARGB { uint32_t colour; struct componentsTag { uint8_t b; uint8_t g; uint8_t r; uint8_t a; } components; } pixel; pixel.colour = 0xff040201; // ARGB::colour is the active member from now on // somewhere down …
254 c++  c  unions  type-punning 

3
Rust에서 Quake의 빠른 InvSqrt () 함수를 작성할 수 있습니까?
이것은 단지 내 자신의 호기심을 만족시키기위한 것입니다. 이것의 구현이 있습니까? float InvSqrt (float x) { float xhalf = 0.5f*x; int i = *(int*)&x; i = 0x5f3759df - (i>>1); x = *(float*)&i; x = x*(1.5f - xhalf*x*x); return x; } 녹에? 존재하는 경우 코드를 게시하십시오. 나는 그것을 시도하고 실패했다. 정수 형식을 …

3
std :: array를 사용하는 std :: bit_cast
그의 최근 강연에서 "현대 C의 유형 말장난 ++" 티무르 Doumler는 말했다 그 std::bit_cast비트가 캐스팅에 사용할 수 없습니다 float에 unsigned char[4]C 스타일 배열은 함수에서 반환 할 수 없기 때문에. 우리는 std::memcpy비슷한 것을 reinterpret_cast<unsigned char*>(&f)[i]잘 정의 할 때 C ++ 23 (또는 그 이후 버전)을 사용 하거나 기다려야 합니다. C ++ 20에서 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.