Re: C: kontrola vstupní hodnoty do procedury preprocesorem.
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Pondělí Červenec 9 21:29:11 CEST 2018
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 bywww.HW.cz <http://www.HW.cz>
>
> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>
> http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
>
>
> _______________________________________________
>
> HW-list mailing list - sponsored bywww.HW.cz <http://www.HW.cz>
>
> Hw-list na list.hw.cz <mailto: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/20180709/b2dddae5/attachment.html>
Další informace o konferenci Hw-list