Chyba v C - velmi podivné chování

Miroslav Šinko sinkomiro na gmail.com
Úterý Duben 21 01:46:47 CEST 2020


Sa vam dvom do toho zamontujem, som nieco nasiel vo svojom archive, ale 
Ty si mimo podozreni :)
Skor si ja pofajcim, ze uz kedy som daval do placu citat z normy, ktory 
si teraz dal aj Ty :-D

https://list.hw.cz/pipermail/hw-list/2011-July/399004.html

miro

On 21.4.2020 1:17, Jan Waclawek wrote:
> Hm, tak ja vidim vyhody skor v tych 6 ifoch a 1 pomocnej premennej...
>
> Ale ak by si nahodou nasiel odkaz, kde ten JW z minulosti povedal, ze
> vysledkom podmienky nemusi byt 0 alebo 1, tak by som Ti bol vdacny.
>
> wek
>
>
> ----- Original Message ---------------
> Takže se po pár mìsících mùžu vrátit k tomu, že jedna z výhod C je možnost
> dìlat vìci, jako:
>
> If ((a<2)+(a>b)+(x<y)+(a%x==12)+(b<y)>  3) {
>
> Což v jiných jazycích vede na 6 ifù a 1 pomocnou promìnnou.
>
> PH
>
> Od: Jan Waclawek
>
> Hm, tak potom by som mal asi tomu JW z minulosti jednu tresnut...
>
> Konkretne teda, C99, 6.5.8 Relational operators #6:
> Each of the operators<  (less than),>  (greater than),<= (less than or
> equal to), and>=
> (greater than or equal to) shall yield 1 if the specified relation is true
> and 0 if it is false. 92)
> The result has type int.
>
> Ten footnote 92) je kuzelny:
>   The expression a<b<c is not interpreted as in ordinary mathematics. As the
> syntax indicates, it
> means (a<b)<c; in other words, ??if a is less than b, compare 1 to c;
> otherwise, compare 0 to c??.
>
> wek
>
>
> ----- Original Message ---------------
>
> Mil jsem nijak za to, ?e to byl právi jistý JW, kdo mi tu onehdá vyeetl, ?e
> spoléhat se, ?e výsledkem podmínky je 0 nebo 1 není správné:-)
>
> PH
>
> Od: Jan Waclawek
>
>> A jinak teda ten kód udilá to, ?e pokud je splnina podmínka v závorce, nastaví se bit 0 na výstupní (zda to bude bit 0 není zarueeno, ale jinak skoro jisté).
>
> Preco by to nemal byt bit 0?
>
> _______________________________________________
>
>>>
>>>    DDRB |=(1<CLK_UP);
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list