Probabilmente una cosa legacy. Le operazioni bit a bit potrebbero non essere molto comuni al giorno d'oggi, ma quando si codifica su un livello molto basso le si usano sempre. Quindi, quando C è stato concepito negli anni '70 o quando è stato creato, gli OP bit a bit erano probabilmente più comuni degli OP logici. E dal momento che C lo ha in questo modo, prendo molti altri linguaggi (come Java, indirettamente dal C ++) seguendo la stessa convenzione.
Ora che ho usato la doppia notazione ( &&
e ||
) per così tanto tempo, sarei confuso solo se fossero passati. Ma per i programmatori completamente nuovi, sarebbe probabilmente una bella cosa: si risparmia un enorme 50% per operazione logica! Immagina la produttività! ^^
EDIT: a condizione che questi cambiamenti siano stati apportati in una nuova lingua, ovviamente, non in altre lingue.