[elektro] Buta C kérdés switch/case
vajk fekete
halaloszto at yahoo.co.uk
Sat Nov 12 15:09:21 CET 2011
en ha tudom hogy melyik ertek mennyire gyakori, es melyik eseten mennyire szorit az ido, akkor if-else hegyet irok, es okosan dontom el hogy melyik lesz az elejen.
vajk
________________________________
From: Móczik Gábor <pm_levlista at progzmaster.hu>
To: elektro at tesla.hu
Sent: Saturday, 12 November 2011, 14:44
Subject: Re: [elektro] Buta C kérdés switch/case
2011.11.12. 8:00 keltezéssel, Lajos Rancz írta:
> befolyásolni, hogy mi történik. Ez a default-os ötlet nem rossz, azt
> nézted, hogy mire fordul ugrótáblára vagy if-es szerkezetre?
Nem, de ha nem time-critical akkor nem is érdekel, inkább legyen
áttekinthető, ha meg az, akkor igen erősen átgondolom mi fut majd le,
esetleg megírom asm-ben.
> Valakik, annyira ragaszkodnak a switch-case szerkezethez, hogy már láttam
> ilyet:
> #define SWITCH if (false)
> #define CASE(cond) else if (cond)
> #define DEFAULT else
>
> És akkor:
> string s;
> SWITCH
> CASE (s == "Dolog1") { .... }
> CASE (s == "Dolog2") { .... }
> DEFAULT { ... }
Adott esetben ez talán nem is túlzás...
#define RANGE(x,lim_l,lim_h) else if (x>=lim_l && x<=lim_h)
RANGE(i,5,10)
..
Csináltam már hasonlót, ahol egy paraméteres ugrótáblázat szerűséget
kellett létrehozni, de nem tömbbel és pointerekkel, hanem helyben
kiértékelve, fixen bedrótozott címekkel. Ebben több lett volna a körítés
mint maga a lényeg, ott dobtam be egy ilyet, hogy egy makróban benne
volt minden, csak le kellett írni sokat egymás alá.
-----------------------------------------
elektro[-flame|-etc]
More information about the Elektro
mailing list