0
このコードでは、0の答えは正しいと思いますが、私は-5で終わります。だからこの単純な算術計算が間違っているのはなぜですか?何が起こったのでしょうか?2つの変数はデバッガで0と表示されますが、減算では-5が返されます。
int daysFromCurrentDay = (i-(1 - weekDisplay));
// daysFromCurrentDay shows as 0 in the debugger.
// currentDay shows as 0 in the debugger.
daysFromCurrentDay -= currentDay;
// daysFromCurrentDay now shows as -5... What??
あなたのアサーションを証明するのは簡単です。 '0-0 = -5'は偽です。より多くのコンテキストを投稿できない限り、これはデバッガのユーザエラーが原因と考えられます。 – Alan
@Alanそれはその前にいくつかの行を設定し、コード内の他の場所には設定しません。 –
HmmmがLLDBからGDBに変更されましたが、currentDayは0ではなく5と表示されるようになりました。LLDBで何が問題になっているのかはわかりませんが、少なくとも問題をデバッグして修正できます。 –