0
コードの一部に見ながら、私はこの行を見た:この余分な括弧は何をしますか?
if ((b = a)) { /* statements */ }
文脈を読むと、私が知っているその意図は、このようなものです:
b = a;
if (b != 0) { /* statements */ }
私は2行以上の簡素化を図ることができる知っています最初のコードブロックに入れますが、2つの括弧のペアはなぜですか?冗長ではないでしょうか?割り当てが(開発者が==
で=
を逃した場合)(当時)の条件として評価されるべきであること、
if (b = a) { /* statements */ }