में संरचना कास्टिंग करना क्या uint64_t या किसी अन्य int में संरचना कास्टिंग करने का कोई साफ तरीका है, क्या < = स्ट्रक्चर int में अंतर्निहित है? यूनियनों का उपयोग करने के लिए केवल एक चीज जिसे मैं सोच सकता हूं वह केवल 'ठीक' समाधान है। हालांकि मैं कभी उनका शौक नहीं रहा हूं। मैं कैसे some_struct डाली अपनी बिट्स uint32_t रजिस्टर में आदेश पर कब्जा करने के लिए क्याint
typedef struct {
uint8_t field: 5;
uint8_t field2: 4;
/* and so on... */
}some_struct_t;
some_struct_t some_struct;
//init struct here
uint32_t register;
अब:
मुझे स्पष्ट करने के लिए एक कोड स्निपेट शामिल हैं।
आशा है कि यह थोड़ा स्पष्ट हो जाए।
वहाँ हमेशा memcpy है! –
@ मार्टिनबेकेट यह एक अच्छा जवाब देगा :) – dasblinkenlight
संघों का "शौकीन" नहीं है? एक संघ ठीक वही करता है जो आप स्पष्ट, रखरखाव योग्य तरीके से करना चाहते हैं। इसके बारे में सिर्फ "ठीक" क्या है? –