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

Помощь в понимании - C++

Восстановить пароль Регистрация
 
metagalaxy
7 / 7 / 2
Регистрация: 18.02.2012
Сообщений: 61
07.07.2013, 19:02     Помощь в понимании #1
C++
1
2
3
const char х[2] [20] = {"Jason ", "at your service\n"};
const char * у = "Quillstone "; for (int і = 0; і < 3; і++) 
cout « ((i<2) ? !i ? x[i] : y : x[1]);
Что тут происходит:
C++
1
((i<2) ? !i ? x[i] : y : x[1]);
Знаю, что это тернарная операция, но не могу понять как работают 2 знака вопроса в едином объявлении.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2013, 19:02     Помощь в понимании
Посмотрите здесь:

C++ Помощь новичку
помощь в литературе C++
Помощь по С++. C++
C++ Проблема в понимании кода!
C++ Помощь с переводом
Указатели сложны в понимании C++
Помощь С++ C++
Помощь в теории C++
Неточность в понимании условия задачи "Жук" (acmp) C++
Помощь в архитектуре C++
C++ Помощь экспертов

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Hrobak
288 / 168 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
07.07.2013, 19:20     Помощь в понимании #2
C++
1
2
3
4
5
6
7
8
if (i<2)
{
    if (!i)
        cout << x[i];
    else
        cout << y;
}
else cout << x[1];
Как-то так
metagalaxy
7 / 7 / 2
Регистрация: 18.02.2012
Сообщений: 61
07.07.2013, 19:25  [ТС]     Помощь в понимании #3
Цитата Сообщение от Hrobak Посмотреть сообщение
if (!i)
Если не i? Как это?))
Hrobak
288 / 168 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
07.07.2013, 19:26     Помощь в понимании #4
Цитата Сообщение от metagalaxy Посмотреть сообщение
Если не i? Как это?))
C++
1
if (i==0) ...
1richard
15 / 5 / 2
Регистрация: 22.06.2013
Сообщений: 25
07.07.2013, 19:27     Помощь в понимании #5
Если не ошибаюсь, то тот кусок кода соответствует вот этому:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if(i<2)
{
 if(!i)
 {
  x[i];
 }
 else
 {
  y;
 }
}
else
{
 x[1];
}
metagalaxy
7 / 7 / 2
Регистрация: 18.02.2012
Сообщений: 61
07.07.2013, 19:31  [ТС]     Помощь в понимании #6
Понял. Два ? работают подобно вложенным циклам.
Yandex
Объявления
07.07.2013, 19:31     Помощь в понимании
Ответ Создать тему
Опции темы

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