簡體   English   中英

C在結構中為結構聲明一個數組

[英]C declare an array for a struct inside a struct

所以我有這樣的事情:

struct cat{
    int breed;
    enum state status;
    ...    

    struct{
        int catNumber;
        ...
    } feederOperations[MAX_FEEDER];
}cats[MAX_CATS];

如果代碼 deosn 沒有意義,請不要擔心,我想知道的是我應該/如何聲明內部結構的新一維數組?

一旦您刪除內部結構的匿名並為其命名。

C 中的內部結構沒有特殊的范圍規則,這意味着struct cat的范圍與struct feederOp的范圍相同。

struct cat{
    int breed;
    enum state status;
    ...    

    struct feederOp {
        int catNumber;
        ...
    } feederOperations[MAX_FEEDER];
}cats[MAX_CATS];

因此,您可以在任何需要的地方創建struct feederOp類型的變量,如下所示。

struct feederOp var1;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM