? и : в скетче

Тема в разделе "Arduino & Shields", создана пользователем ЛиС, 2 фев 2017.

  1. ЛиС

    ЛиС Нуб

    На просторах интернета нашел скетч. В нем такая строчка:

    Код (C++):
           digitalWrite(segmentsPins[k], ((seg[digid][k] == 1) ? LOW : HIGH));
    что за операторы "?" и ":" ???
     
  2. mcureenab

    mcureenab Гуру

    Код (C++):
    T = X ? Y : Z
    Если X == 0 (false), то T принимает Z. В противном случае T принимает Y.
     
    ЛиС нравится это.
  3. ЛиС

    ЛиС Нуб

    спасибо
     
  4. ostrov

    ostrov Гуру

    Иногда тренарная функция удобнее стандартного if. и применяться может не только для присвоения. На Вики есть примеры хорошие.