मैं कुछ कोड है कि इस तरह struct के आकार हो जाता है पाया:struct_type [1] का क्या अर्थ है?
sizeof(struct struct_type[1]);
मैं परीक्षण किया है और यह struct_type
के आकार वापसी करता है।
और
sizeof(struct struct_type[2]);
रिटर्न दो बार struct आकार।
संपादित करें:
struct struct_type {
int a;
int b;
};
क्या struct_type[1]
वास्तव में क्या मतलब है:
struct_type
एक struct, नहीं एक सरणी है?
'struct_type' शायद structs की एक सरणी है, 'sizeof (struct struct_type [1]);' structs की सरणी में पहले तत्व का आकार प्राप्त होता है। – Caw
@iwin no, यह एक एरे नहीं है, कृपया मेरा अपडेट देखें – Nik
आप 'struct_type' की सरणी कैसे घोषित करते हैं? अब सोचें कि आप उस सरणी का आकार किस तरह से प्राप्त करते हैं। यह आम तौर पर अच्छा अभ्यास नहीं होता है, क्योंकि एक व्यक्ति 'आकार' को एक ऑब्जेक्ट लेता है, या तो एक चर या प्रकार के पॉइंटर को डिफ्रेंस करके। यदि आप ऑब्जेक्ट के प्रकार को बदलते हैं तो इस तरह आपका कोड नहीं टूट जाएगा। एक और मुद्दा कोड में एक पूर्णांक निरंतर उपयोग (उर्फ "जादू संख्या") है। खराब अभ्यास, '# परिभाषित' (उर्फ मैक्रो) का उपयोग करें। – Olaf