Синтаксис digitalWrite

Тема в разделе "Arduino & Shields", создана пользователем Вадим Елисеев, 21 авг 2012.

  1. Подскажите, пожалуйста, чайнику...
    В примере к библиотеке IRremote встретилась такая строка:

    digitalWrite(13, on ? HIGH : LOW);

    где on - переменная типа int. В описании языка ARDUINO мне не удалось найти такую конструкцию, где можно посмотреть что это значит и как это правильно применять?...
    Спасибо.
     
  2. nailxx

    nailxx Официальный Нерд Администратор

    Это эквивалент:

    Код (Text):

    byte signal;
     
    if (on)
        signal = HIGH;
    else
        signal = LOW;
     
    digitalWrite(13, signal);
     
    В вашем случае, прямо на месте используется тернарный оператор «condition ? what_if_true : what_if_false». На самом деле тут так же замечательно бы сработало:

    digitalWrite(13, on);