Inkrementalni cidlo - cudlik
Pavel Hudecek
edizon na seznam.cz
Pondělí Červenec 25 13:26:21 CEST 2016
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 ^^?
Další informace o konferenci Hw-list