2011-12-05 6 views
-3
if (++bufCnt >= smenu->bufSize) //line1 
if (bufCnt++ >= smenu->bufSize) //line2 

インライン1 bfrCntを最初にインクリメントして比較します。 2行目でまず比較してからインクリメントします。これは正しいです?if内で比較する変数をインクリメントする

+3

はい、はいです。 – Nate

+2

試してみてください。 –

+1

ifより前にインクリメントしないのはなぜですか?あなたはコードの長さが効率に影響しないことを知っていますか? – Gui13

答えて

1

はい、 ライン1では、最初にbfrCntをインクリメントして比較します。 line2では、最初に比較されてからインクリメントされます。 このサイトの他の質問と比較すると、あなたの質問には品質がありません。だからこそ、あなたは投票権を得ているのです。 これまで質問を投稿しているときは、十分な標準があることを確認してください。

+2

sarin jacobありがとう、私はよくFAQを読んでいます。私は一般的な基本的な質問は許されないことを知らなかった。次回はフォーラムのルールに従います。フォーラムのルールに違反しているので、モデレータの一人にこのスレッドを削除するようお願いしています。 – alexxx

2

修正。 どちらの場合も、bufCntを増やしてください。 しかし、それ以外の場合は、bufCntを2回増やしてください。

+0

答えに感謝します。しかし、それはどういう意味ですか?なぜ2回?行1のみを使用します。 – alexxx

+0

両方の行(whyever)と最初のif文がfalseの場合は、2行目でbufCountを2回増分します。 – Thargor