gcc
ग्नू सी एक्सटेंशन्स
खोज…
परिचय
जीएनयू सी कंपाइलर कुछ शांत विशेषताओं के साथ आता है जो सी मानकों द्वारा निर्दिष्ट नहीं हैं। ये एक्सटेंशन सिस्टम सॉफ़्टवेयर में बहुत अधिक उपयोग किए जाते हैं और प्रदर्शन अनुकूलन के लिए एक महान उपकरण हैं।
पैक किए गए गुण
पैक एक चर विशेषता है जिसका उपयोग मेमोरी आवश्यकताओं को कम करने के लिए संरचनाओं और यूनियनों के साथ किया जाता है।
#include <stdio.h>
struct foo {
int a;
char c;
};
struct __attribute__((__packed__))foo_packed {
int a;
char c;
};
int main()
{
printf("Size of foo: %d\n", sizeof(struct foo));
printf("Size of packed foo: %d\n", sizeof(struct foo_packed));
return 0;
}
मेरे 64 बिट लिनक्स पर,
- संरचनात्मक फू का आकार = 8 बाइट्स
- संरचना का आकार foo_packed = 5 बाइट्स
पैक्ड एट्रिब्यूशन स्ट्रक्चर पेडिंग को कर्ब करता है जिसे कंपाइलर मेमोरी एलाइनमेंट बनाए रखने के लिए करता है।
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow