struct数组的初始化

时间:2017-04-28 14:26:46

标签: c++ arrays struct arduino

struct Sensors
{
  int pin;
  int angle;
  bool state;
};

Sensors sensor[6];

如何像普通数组一样初始化传感器的每个字段? 这个方法

mydata data[] = { { 1, 2, 3, 4, 5, 6 }, 
                  { 0, 60, 120, 180, -120, -60 },
                  { false, false, false, false, false, false} };

不起作用,它返回了太多的初始化。

2 个答案:

答案 0 :(得分:3)

您可以使用aggregate initialization

struct Sensors
{
    int pin;
    int angle;
    bool state;
};

Sensors sensor[6] = {
    { 0, 0, true },
    { 1, 0, true },
    { 2, 0, false },
    { 3, 0, false },
    { 4, 0, false },
    { 5, 0, false }
};

答案 1 :(得分:2)

struct Sensors
{
    int pin;
    int angle;
    bool state;
};

int main()
{
    Sensors sensor[6] = {
        { 1, 2, false },
        { 1, 2, true },
        { 1, 3, false },
        { 2, 2, false },
        { -1, -2, true },
        { 1, 2, false }
    };

    return 0;
}