пятница, 10 апреля 2020 г.

Arduino Макрос цикла


Надоел цикл for?
Часто приходится писать один и тот же цикл for, можно заменить его макросом:

#define FOR_i(from, to) for(int i = (from); i < (to); i++)
Макрос создаст цикл for от from до to и счётчиком i внутри. Пример использования:

// выведет числа от 0 до 9
FOR_i(0, 10) {
  Serial.println(i);
}
Нужны вложенные циклы? Можно сделать макрос с выбором имени переменной

#define FOR(x, from, to) for (int (x) = (from); (x) < (to); (x)++)
И пример с ним:

// работа с двумерным массивом
FOR(i, 0, 10) {
  FOR(j, 0, 3) {
    someArray[i][j] = someValue;
  }
}

Комментариев нет:

Отправить комментарий