zmiana modulo operatora w c ++ 11? [duplikować]
Możliwy duplikat:
% Gwarancji operatora C ++
W c ++ 98/03
5.6-4
Operator binary / daje iloraz, a operator binary% daje resztę z podziału pierwszego wyrażenia przez drugie. Jeśli drugi operand / lub% ma wartość zero, zachowanie jest niezdefiniowane; w przeciwnym razie (a / b) * b + a% b jest równe a.Jeśli oba operandy są nieujemne, to reszta jest nieujemna; jeśli nie, znak reszty jest definiowany przez implementację.
W c ++ 11:
5,6 -4
Operator binary / daje iloraz, a operator binary% daje resztę z podziału pierwszego wyrażenia przez drugie. Jeśli drugi operand / lub% ma wartość zero, zachowanie jest niezdefiniowane. Dla operandów całkowych operator / daje iloraz algebraiczny z każdą odrzuconą częścią ułamkową; 81 jeśli iloraz a / b jest reprezentowany w typie wyniku, (a / b) * b + a% b jest równe a.
Jak widzisz brak zdefiniowanej implementacji dla bitu znaku, co się z nim dzieje?