Delka log.radku
Draxal Miroslav
evik@vol.cz
Pondělí Prosinec 29 12:41:28 CET 2008
No ano, potom vse co je za ; je vlastne REM, tak potom nevim proc
pouzivat /* */. Nemel by kompiler zarvat, ze je chyba?
Tohle jsou fakt pro me zajimavy chyby, který nekdy objevit je horor.
Často pomuze nahlednuti ciziho člověka, kterej to nemá v hlave ofoceny
ale cte sys. radek po radku. MIRA
-----Original Message-----
From: hw-list-bounces@list.hw.cz [mailto:hw-list-bounces@list.hw.cz] On
Behalf Of Pavel Troller
Sent: Monday, December 29, 2008 12:18 PM
To: HW-news
Subject: Re: Delka log.radku
> Tak prdlajs chyba u H_I-T_E_C_H. pokud se odstrani";", tak je vypocet
> OK. Ja to mel puvodne jako
> double CosZemeSirkaRadDb =.638324569;, pak to zmenil na #define (
proto
> ; na konci ) nervalo to, nevsiml jsem si.
> Ale ze jednou to vezme a podruhe ne, tak to mi hlava nebere. Zase jsem
o
> něco chytrejsi. Vsem DIKY MIRA
>
Zdravím,
ale to je přeci samozřejmé, že se to takto chová :-).
#define je jen makro, které je ještě před překladem nahraženo tím
rozvojem. Ten rozvoj se přenese samozřejmě včetně toho středníku, čímž
nekorektně ukončí patřičný aritmetický výraz. Neřve to proto, že v C je
to syntakticky v pořádku, neboť sice tam vzniknou izolované výrazy,
které nejsou nikam přiřazeny, ale to normálnímu C nevadí - není zde
povinnost přiřazovat výsledek operace do nějaké proměnné, takže ten
zbytek výrazu je jen takový "výkřik do tmy", který se následně zahodí a
nebo jej slušný kompilátor dokonce vyoptimalizuje, takže tam vůbec
nebude :-).
S pozdravem Pavel Troller
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz Hw-list@list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list