Skocz do zawartości

Arduino dla początkujących: instrukcje sterujące w C/C++. Część 3: for, break, switch


Pomocna odpowiedź

5 minut temu, BananWszyscy napisał:

Przy okazji mogłeś wspomnieć o tajemniczym dla niektórzych enum

A jaki jest tytuł artykułu? 😉

Ale zapisuję sobie na przyszłość.

  • Lubię! 1
5 minut temu, _LM_ napisał:

Czasami działa też 


//no break

 

A, tego nawet nie wiedziałem, w dokumentacji do GCC znalazłem tylko pass thru. Zawsze dobrze wiedzieć...

(edytowany)

Hej a gdzie instrukcja continue? No i dla wielu następujących po sobie wartości w switch (które mają dać ten sam wynik) można zrobić 

switch(x) {
 case 0: printf("zero");
    break;
 case 1 ... 9: printf("przedzial od jeden do 9" );
break;
} 

 

Edytowano przez _LM_
  • Lubię! 1
5 minut temu, ethanak napisał:

(na razie zbieram co pominąłem, ale aneks będzie).

To jeszcze jeśli mogę podpowiedzieć, to dorzuć operator trójargumentowy

  • Lubię! 1
32 minuty temu, BananWszyscy napisał:

ale jak to switch bez enuma?

A na przykład tak:
 

int a = getchar_non_blocking(); // cokolwiek by to było
if (a) {
  switch (tolower(a)) {
    case 'n':
    printf("Nacisnąłeś NIE\n");
    break

    case 'y':
    case 't':
    printf("Nacisnąłeś TAK\n");
    break;

    case '0' ... '9':
    printf("Nacisnąłeś cyfrę\n");
    break;
      
    default:
    printf("Coś nacisnąłeś\n");
  }
}

Gdzie tu widzisz dobre miejsce dla enumów?

@Treker Po prostu są tacy, co uważają że enumy zostały wynalezione specjalnie do switchy i to ich główne (jak nie jedyne) zadanie. A tymczasem można o tym cały długi artykuł napisać... i nawet o switchu nie wspomnieć 😉

 

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...