मुझे इनमें से कोई भी जवाब पसंद नहीं आया इसलिए मैंने अपना बना लिया। मुझे नहीं पता कि यह एएनएसआई सी है या नहीं, यह डिफ़ॉल्ट मोड में सिर्फ जीसीसी 4.2.1 है। मैं कभी भी ब्रैकेटिंग को याद नहीं रख सकता, इसलिए मैं अपने डेटा के सबसेट के साथ शुरू करता हूं और कंपाइलर एरर मैसेज के साथ लड़ाई करता हूं, जब तक कि वह बन्द नहीं हो जाता। पठनीयता मेरी पहली प्राथमिकता है।
// in a header:
typedef unsigned char uchar;
struct fields {
uchar num;
uchar lbl[35];
};
// in an actual c file (I have 2 in this case)
struct fields labels[] = {
{0,"Package"},
{1,"Version"},
{2,"Apport"},
{3,"Architecture"},
{4,"Bugs"},
{5,"Description-md5"},
{6,"Essential"},
{7,"Filename"},
{8,"Ghc-Package"},
{9,"Gstreamer-Version"},
{10,"Homepage"},
{11,"Installed-Size"},
{12,"MD5sum"},
{13,"Maintainer"},
{14,"Modaliases"},
{15,"Multi-Arch"},
{16,"Npp-Description"},
{17,"Npp-File"},
{18,"Npp-Name"},
{19,"Origin"}
};
डेटा एक टैब-सीमांकित फ़ाइल के रूप में जीवन शुरू कर सकता है जिसे आप किसी अन्य चीज़ में मालिश करने के लिए खोज-प्रतिस्थापित करते हैं। हाँ, यह डेबियन सामान है। तो बाहर की एक जोड़ी {} (सरणी को इंगित करते हुए), फिर अंदर प्रत्येक संरचना के लिए एक और जोड़ी। के बीच अल्पविराम से। हेडर में चीजों को रखना कड़ाई से आवश्यक नहीं है, लेकिन मुझे अपनी संरचना में लगभग 50 आइटम मिले हैं इसलिए मैं उन्हें एक अलग फाइल में चाहता हूं, दोनों को मेरे कोड से बाहर रखना है और इसलिए इसे बदलना आसान है।