पर विचार करें निम्नलिखित कोड:समझौता सी ++ struct आकार
struct CExample {
int a;
}
int main(int argc, char* argv[]) {
CExample ce1;
CExample ce2;
cout << "Size:" << sizeof(ce1) << " Address: " << &ce1 << endl;
cout << "Size:" << sizeof(ce2) << " Address: " << &ce2 << endl;
CExample ceArr[2];
cout << "Size:" << sizeof(ceArr[0])<< " Address: "<< &ceArr[0] <<endl;
cout << "Size:" << sizeof(ceArr[1])<< " Address: "<< &ceArr[1] <<endl;
return 0;
}
आउटपुट उदाहरण:
CE1: आकार = 4, पता: 0039FAA0
CE2: आकार = 4, पता: 0039FA94
ceArr [0] : आकार = 4, पता: 0039FA84
ceArr [1]: आकार = 4, पता: 0039FA88
वहाँ पहले दो वस्तुओं के पते (CE1 और CE2), लेकिन जो 12-बाइट है वहाँ केवल 4-बाइट अंतर शर्त है सरणी में वस्तुओं को बुनाई।
मैंने सोचा कि डेटा-संरेखण के मुद्दे के साथ कुछ करना होगा, लेकिन मैं अभी भी स्टंप हूं। कोई विचार वास्तव में यहां क्या चल रहा है?
ऊपर के उत्पादन में क्या है? कोड को कोड में भी पोस्ट करना? –