C での短絡評価 : Java と同様に保証されていますか?
Java では、短絡評価メカニズムにより、式が次のことを保証します。左から右に順番に評価され、偽の値が検出されるとすぐに停止します。この動作により、次のような条件を効率的に使用できるようになります。
if (a != null && a.fun());
Can C Offer the Same Academic?
C では、短絡評価も次のように使用されます。組み込みのデータ型と演算子。ただし、その保証は Java とは異なります。
if (a != 0 && a->fun());
ここで、!= 0 は true または false のいずれかに評価され、true と評価された場合にのみ が楽しいです。 () が実行されました。この保証された動作は、組み込み型にのみ適用されます。
& および || のオーバーロードC の
C のカスタム型は && と || をオーバーロードできます。オペレーター。これが発生した場合、短絡評価は保証されません。結果として、カスタム型に対してこれらの演算子をオーバーロードすることは一般に推奨されません。
以上がC での短絡評価: Java と同じくらい信頼性がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。