Kviz pri patku, podpasovka v C ?

Jan Waclawek konfera na efton.sk
Pátek Listopad 4 15:32:28 CET 2016


Mimochodom, ak by nahodou niekto namietal voci nelogickej precedencii toho
& voci >=, tak:

>From decvax!harpo!npoiv!alice!research!dmr 
Fri Oct 22 01:04:10 1982 
Subject: Operator precedence 
News-groups: net.lang.c

The priorities of && || vs. == etc. came about in the following way.
Early C had no separate operators for & and && or | and ||. (Got that?)
Instead it used the notion (inherited
from B and BCPL) of "truth-value context": where a Boolean value was
expected, after "if" and "while" and
so forth, the & and | operators were interpreted as && and || are now; in
ordinary expressions, the bitwise
interpretations were used. It worked out pretty well, but was hard to
explain. (There was the notion of "top-level
operators" in a truth-value context.)
The precedence of & and | were as they are now.
Primarily at the urging of Alan Snyder, the && and || operators were added.
This successfully separated
the concepts of bitwise operations and short-circuit Boolean evaluation.
However, I had cold feet about the
precedence problems. For example, there were lots of programs with things
like
if (a==b & c==d) . . .
In retrospect it would have been better to go ahead and change the
precedence of & to higher than ==, but it
seemed safer just to split & and && without moving & past an existing
operator. (After all, we had several
hundred kilobytes of source code, and maybe 3 installations. . . . )


A ak by niekto nevedel, kto sa skryva pod "dmr", tak doporucujem gugl... ;-)

wek


Další informace o konferenci Hw-list