私の C コンパイラは、値に単項マイナスを使用すると警告を出したunsigned
ので、代わりに 0 からの減算を行うことで警告を修正しました。
ここで、現在のコードが元のコードと同等であるかどうか疑問に思います。
uint32_t a, b; // assume b is initialized and non-zero
a = -b % b; // old code
a = (0-b) % b; // current code
私の質問は次のとおりです。同じ値の場合b
、コードの両方の行で同じ結果が得られa
ますか?