RE: C: kontrola vstupní hodnoty do procedury preprocesorem.
Miroslav Draxal
evik na volny.cz
Úterý Červenec 10 14:33:28 CEST 2018
Samozřejmě že A mělo být AA J
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jaroslav
Buchta
Sent: Monday, July 09, 2018 9:29 PM
To: hw-list na list.hw.cz
Subject: Re: C: kontrola vstupní hodnoty do procedury preprocesorem.
Uz podruhe mne mate jak AA a BB prechazi na A a B - ale mozna jsem to jen
nepochopil...
Obecne to IMHO nejde, protoze jako argument muzete predt treba
UdelejNeco(*((uint32_t*)1234)); a preprocesor je v ...
Dne 09.07.2018 v 21:19 Miroslav Draxal napsal(a):
Rozvedu to:
#define AA 5
#define BB 10
#if A+10+B > 200
# error "Cislo je moc velké"
#endif
UdelejNeco (A+10+B);
Sem míří moje otázka. UdelejNeco je procedura v knihovně. Volám jej
několikrát z main. To #if bych rád v knihovně ne v main, a aby to
vyhodnocoval preprocesor, ne program.
Snad je to popsáno správně.
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jaroslav
Buchta
Sent: Monday, July 09, 2018 8:19 PM
To: hw-list na list.hw.cz
Subject: Re: C: kontrola vstupní hodnoty do procedury preprocesorem.
Nevim jak to myslite, preprocesor je IMHO mocny nastroj jazyka C, ktery z
nej prave dela idealni jazyk pro psani programu prenositelnych na ruzne
platformy a pritom na nizke urovni.
Jen se musi pouzivat k ucelu, ke kteremu byl zamyslen...
Nechapu presne, co tazatel chce, jestli vyhodnoceni argumentu pro funkci ve
fazi prekladu, tak bych sel cestou modifikace algoritmu, aby to nebylo
potreba.
Dne 09.07.2018 v 19:22 Ondrej napsal(a):
Zdravím
nemohlo by pár const statických "proměnných" a inline funkcí a assert udělat
stejnou práci. A lépe. C preprocesor je zlo a jeho použití nedává u
modernách překladačů většinou moc smysl.
O.
Dne 9.7.2018 v 11:41 Miroslav Draxal napsal(a):
Zdravím vespolek,
Lze nějakým šikovným zápisem kontrolovat vstupní hodnotu procedury
preprocesorem? Nic mě nějak nenapadá.
#define AA 5
#define BB 10
UdelejNeco (A+10+B);
Zkontrolovat preprocesorem, aby hodnota řekněme nebyla větší než 200.
Díky za pomoc, Míra
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20180710/6b529b3e/attachment.html>
Další informace o konferenci Hw-list