मैंने पहले आराम से यूनियनों का उपयोग किया है; जब मैंने इस पोस्ट को पढ़ा तो मुझे घबराहट हुई और मुझे पता चला कि यह कोड है union ARGB { uint32_t colour; struct componentsTag { uint8_t b; uint8_t g; uint8_t r; uint8_t a; } components; } pixel; pixel.colour = 0xff040201; …
यह सिर्फ मेरी अपनी जिज्ञासा को संतुष्ट करने के लिए है। क्या इसका कार्यान्वयन है: 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; } जंग में? यदि यह मौजूद है, …
उनकी हाल ही वार्ता में "आधुनिक सी में टाइप punning ++" तैमूर Doumler कहा कि std::bit_castकरने के लिए थोड़ा और एक डाली नहीं किया जा सकता floatएक में unsigned char[4]क्योंकि सी शैली सरणियों एक समारोह से वापस नहीं किया जा सकता है। हमें या तो std::memcpyC ++ 23 (या बाद …