Inkrementalni cidlo - cudlik

Zdeněk Aster Zdenek.Aster na seznam.cz
Pondělí Červenec 25 14:02:01 CEST 2016


Taktéž závorkuji uplně vše dokonce i za podmínkou když mám jeden příkaz tak
jde do složených závorek... Protože se stane, že použijete makro a když si

to člověk neuvědomí tak to je pak mazec.....




(  (a==b) && (b<4)  || (c<(x-5))  )




Zas to tak hrozne nevypada.





Zdenek Aster




---------- Původní zpráva ----------



Od: Josef Štengl <ok1ced na nagano.cz>
Komu: HW-news <hw-list na list.hw.cz>
Datum: 25. 7. 2016 13:56:46
Předmět: Re: Inkrementalni cidlo - cudlik

"U logických a bitových operátorů jsem viděl (a udělal :-) už tolik chyb, že
už píšu (a vyžaduji) závorky všude.
Priority operátorů totiž málokdo perfektně zvládá. A tak vznikají nepříjemné
chyby, které se obtížně hledají.

Další problémy jest u kombinací logických a bitových operátorů v jednom 
výrazu. Když pak po někom děláte revizi, tak jen 
budete hádat, jak to autor myslel (to co napsal je zřejmé). Jemu to jasné 
je, ale bohužel jen jemu :-(.




Dne 25.7.2016 v 13:26 Pavel Hudecek napsal(a):
> Já to mám přesně naopak. Závorky používám, když potřebuji přebít 
implicitní priority, když si s prioritou nejsem jist (ale
> stejně si ji při té příležitosti najdu, protože neznalost mě irituje), 
nebo výjimečně když se mi zdá, že by to mohly
> zpřehlednit (ale na to většinou stačí někam dát/nedat mezeru).
>
> Výrazy typu
> a==b && b<4 || c<x-5
> považuji za na první pohled jasné.
>
> Když tohle někde vidím se závorkami, jejich studování mě jen zdržuje. 
Kopíruji-li podobně přezávorkované věci do svých
> projektů, závorky odmazávám, podobně jako /* a */ u jednořádkových 
komentářů.
>
> Možná, že zde je důvod, který vedl autora C k nezavedení ^^: Rozdíl mezi 
prioritou AND a OR je všeobecně známý a
> zakořeněný, XOR by do toho mohl zavést zmatky. :-)
>
>> vím, co jsem si myslel, když to později čtu
> Tohle se mu mě projevuje spíš u číselných konstant:
> Spočítání třeba 255-125 nechám na kompileru a tak zůstane zachována 
informace, z čeho to vzniklo.
>
> PH
>
> -----Původní zpráva----- From: Josef Štengl
> No ale ono se většinou na prioritu kašle a píší se stejně závorky. Nejde o
to, že by to bylo hezčí, nebo složité si ji
> pamatovat. Důležitější je, že je vidět co autor zamýšlel. Velmi užitečné. 
Nepamatuji si prioritu u žádného programovacího
> jazyka, ale vím, co jsem si myslel, když to později čtu :-)
>
> Ani v prvním ani v druhém případě bych nevěděl, co tím autor myslel.
>
> && a || je k logickému testování oproti nule.
>
>
> Dne 23.7.2016 v 21:35 Pavel Hudecek napsal(a):
>> Ale má úplně jinou prioritu, než logické operátory, navíc stejnou jako ==
.
>>
>> Příklad:
>>
>> a == b ^^ x == 1
>> - vyhodnotily by se rovnosti a pak xor mezi nimi
>>
>> a == b != x == 1
>> - vyhodnotí se levá rovnost, potom zda se její výsledek rovná x, ...
>> - hlásí mi warning, že by to chtělo závorky... tentokrát zcela oprávněně.
>>
>> ale zdá se, že by vlastně mělo fungovat i:
>> a == b ^ x == 1
>> ... i když hlásí stejný warning
>>
>> Pak je ale otázka, k čemu je potřeba && a ||
>>
>> PH
>>
>> -----Původní zpráva----- From: Miroslav Mraz
>>
>> Protože je !=
>>
>> Mrazík
>>
>> Dne 23.7.2016 v 20:22 Pavel Hudecek napsal(a):
>>> Mimochodem, proč když je && a || není taky ^^?
>
> _______________________________________________
> 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/20160725/a2b7bffb/attachment.html>


Další informace o konferenci Hw-list