Tôi không thích bất kỳ câu trả lời nào trong số này vì vậy tôi tự đưa ra. Tôi không biết đây có phải là ANSI C hay không, đó chỉ là GCC 4.2.1 ở chế độ mặc định. Tôi không bao giờ có thể nhớ dấu ngoặc đơn vì vậy tôi bắt đầu với một tập hợp con dữ liệu của mình và chiến đấu với các thông báo lỗi trình biên dịch cho đến khi nó tắt. Khả năng đọc là ưu tiên hàng đầu của tôi.
// 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"}
};
Dữ liệu có thể bắt đầu cuộc sống dưới dạng một tệp được phân định bằng tab mà bạn tìm kiếm - thay thế để xoa bóp vào một thứ khác. Vâng, đây là công cụ Debian. Vì vậy, một cặp bên ngoài {} (chỉ ra mảng), sau đó một cặp khác cho mỗi cấu trúc bên trong. Với dấu phẩy giữa. Đặt mọi thứ vào một tiêu đề không thực sự cần thiết, nhưng tôi đã có khoảng 50 mục trong cấu trúc của mình vì vậy tôi muốn chúng trong một tệp riêng biệt, cả hai để tránh sự lộn xộn trong mã của tôi và do đó dễ dàng thay thế hơn.