Форум программистов, компьютерный форум CyberForum.ru

Тернарное условие - C++

Восстановить пароль Регистрация
 
VASYA_A
2 / 2 / 0
Регистрация: 11.09.2013
Сообщений: 129
24.09.2013, 23:11     Тернарное условие #1
Помогите расшифровать тернарное условие
C++
1
2
3
4
5
6
 for (c=1; c<=16; c++)
    {
       cout << (x & displayMask ? '1':'0');
       x<<=1;
       if (!(c % 8))      cout << ' ';
     }
Если результат побитовой операции =1, то делаем сдвиг х<<1, если равно 0 , то не делаем .
Правильно ли я понял?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gromo
 Аватар для gromo
366 / 265 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
24.09.2013, 23:26     Тернарное условие #2
Цитата Сообщение от VASYA_A Посмотреть сообщение
Правильно ли я понял?
Не правильно.
Если (x & displayMask) даст true, то выводим на терминал '1', иначе '0'. Все, условие закончилось.
Далее сдвигаем биты x на 1 позицию влево.
Повторяем все, пока "с" не станет равной 16
VASYA_A
2 / 2 / 0
Регистрация: 11.09.2013
Сообщений: 129
24.09.2013, 23:36  [ТС]     Тернарное условие #3
Цитата Сообщение от gromo Посмотреть сообщение
Не правильно.
Если (x & displayMask) даст true, то выводим на терминал '1', иначе '0'. Все, условие закончилось.
Далее сдвигаем биты x на 1 позицию влево.
Повторяем все, пока "с" не станет равной 16
Я уже сам понял свою ошибку. Стоило немного подумать )
Но спасибо за ответ )
gromo
 Аватар для gromo
366 / 265 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
24.09.2013, 23:37     Тернарное условие #4
А вообще, это программа, которая выводит побитово число "х", группируя их в октеты. Причем выводится первые два байта числа
Yandex
Объявления
24.09.2013, 23:37     Тернарное условие
Ответ Создать тему
Опции темы

Текущее время: 09:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru