• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Wykorzystanie w jednej linii więcej niż jeden raz operatora ? :

0 głosów
67 wizyt
pytanie zadane 23 września 2020 w C i C++ przez Famous_D Nowicjusz (150 p.)
zamknięte 24 września 2020 przez Famous_D

Czytając książkę o języku c++, natknąłem na kod, którego nie potrafię zrozumieć o ile sam operator ? : jestem w stanie zrozumieć o tyle poniższy kod jest dla mnie nie zrozumiały. Prosiłbym o wytłumaczenie w jaki sposób Output poniższego kodu jest " Hello World !". Jeżeli istnieje możliwość przedstawienia tego kodu w postaci if else byłbym bardzo wdzięczny o przedstawienie go. Z góry dziękuje za pomoc.

#include <iostream>

int main(){
const char x[2] [20] = {"Hello ", " !"};
const char* y = "World";

for(int i = 0; i < 3; i++)
        std::cout << ((i < 2) ? !i ? x [i] : y : x [1]);

 

komentarz zamknięcia: Wyjaśnione

1 odpowiedź

0 głosów
odpowiedź 23 września 2020 przez adrian17 Ekspert (322,420 p.)
wybrane 23 września 2020 przez Famous_D
 
Najlepsza

Można dodać nawiasy:

std::cout << ((i < 2) ? ((!i) ? (x [i]) : y) : (x [1]))

A dodając wcięcia:

std::cout << (
    (i < 2)
        ? ((i==0) ? (x[i]) : y) // i==0 -> "Hello ", i==1 -> "World"
        : (x[1])                // i==2 -> " !"
)

 

komentarz 23 września 2020 przez Famous_D Nowicjusz (150 p.)
Wcięcia wszystko wyjaśniły dziękuję.

Podobne pytania

0 głosów
1 odpowiedź 929 wizyt
pytanie zadane 16 lipca 2017 w C i C++ przez Krystek102 Bywalec (2,440 p.)
+1 głos
2 odpowiedzi 108 wizyt
pytanie zadane 14 czerwca 2021 w C# przez everstudybee Początkujący (490 p.)
0 głosów
0 odpowiedzi 102 wizyt
pytanie zadane 27 stycznia 2021 w C i C++ przez Miaugosia Nowicjusz (210 p.)

88,701 zapytań

137,308 odpowiedzi

306,748 komentarzy

58,894 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...