C:数组结构为结构数组

时间:2017-10-22 14:15:39

标签: c arrays struct

我想知道是否有可能将数组结构作为结构的结构读取。

e.g。

typedf struct foo{
    int a[];
    int b[];
    int c[];
}foo_t;

main:
foo_t foo ={.a={11,12,13},.b={21,22,33},.c={31,32,33}};

所以foo [0]将包含{11,21,31},foo [1]将包含{12,22,32},而foo [2]将包含{13,23,33}

任何想法?

2 个答案:

答案 0 :(得分:1)

为什么不使用结构数组。

typedef struct foo{
  int a;
  int b;
  int c;
}foo_t;

main:
foo_t foo[] ={{11,21,31}, {12,22,32}, {13,23,33}};

所以foo [0]将包含{11,21,31},foo [1]将包含{12,22,32},而foo [2]将包含{13,23,33}

答案 1 :(得分:0)

不,你不能。结构数组在结构和语义上与数组结构不同。