सी में, मैं structs की एक सरणी परिभाषित की तरह है:सी में structs की सरणी पर 'sizeof' के परिणाम?
struct D
{
char *a;
char *b;
char *c;
};
static struct D a[] = {
{
"1a",
"1b",
"1c"
},
{
"2a",
"2b",
"2c"
}
};
मैं सरणी में तत्वों की संख्या निर्धारित करने के लिए चाहते हैं, लेकिन एक गलत परिणाम sizeof(a)
रिटर्न: 48, नहीं 2. एम आई कुछ कर रही गलत, या sizeof
है बस यहां अविश्वसनीय है? यदि यह मायने रखता है कि मैं GCC 4.4 के साथ संकलित कर रहा हूं।
देखें http://stackoverflow.com/questions/1598773/is-there-a- मानक- कार्यक्षमता-in-c-that-would-return-the-length-of-an-array/1598827#1598827 के लिए एक उत्तर जिसमें तकनीकों को सुरक्षित रूप से नीचे पोस्ट करने के लिए कुछ हैक्स शामिल हैं। –