Snaha o lepsiu nahradu za goto, was: goto considered harmful; was: ceckovy kviz 2 (hardcore)

Miroslav Šinko sinkomiro na gmail.com
Pátek Září 8 14:38:01 CEST 2023


Pre mna z jedneho neprehladneho do druheho a este viac 
neprehladnejsieho. Teraz viem, ako to ma fungovat, ale o pol roka? A 
pouzit to v praci, tak ma kolegovia utlcu :)

miro

On 08.09.2023 14:10, Jan Waclawek wrote:
> Jedna zo situacii ked goto pouzivam je vtedy, ak v switch/case je niekolko
> pripadov, ktore maju aj separatnu aj spolocnu cast; a niekolko dalsich,
> ktore su uplne odlisne (to je castokrat nasledok spracovania prijatych
> sprav od nejakeho ineho geretu, kazdu spravu treba nejako separatne
> spracovat a potom treba odpovedat, a mnohe ale nie vsetky odpovede su
> rovnake, trebars "pocul som").
> 
> Tak som pod dojmom predchadzajucej diskusie zauvazoval, ci nezacnem
> pouzivat toto:
> volatile unsigned char a, b;
> 
> int main(void) {
>    switch(a) {
>      do {  // only to be able to break into a common epilogue
>        case 0:
>          a = 5;
>          break;
>        case 1:
>          a = 7;
>          break;
>      } while(0);  // common epilogue for cases 0 and 1
>        b = 12;
>        break;
> 
>      // now the separate cases
>      case 2:
>        a = 10;
>        b = 4;
>        break;
>      default:
>        a = 1;
>        b = 23;
>        break;
>    }
> }
> 
> wek
> 


Další informace o konferenci Hw-list