operador modulo cambio en c ++ 11? [duplicar]
Posible duplicado:
C ++ operador% garantías
En c ++ 98/03
5.6-4
El operador binario produce el cociente, y el operador% binario produce el resto de la división de la primera expresión por la segunda. Si el segundo operando de / o% es cero, el comportamiento no está definido; de lo contrario (a / b) * b + a% b es igual a a.Si ambos operandos son no negativos, el resto es no negativo; Si no, el signo del resto está definido por la implementación..
En c ++ 11:
5,6 -4
El operador binario produce el cociente, y el operador% binario produce el resto de la división de la primera expresión por la segunda. Si el segundo operando de / o% es cero, el comportamiento no está definido. Para los operandos integrales, el operador / produce el cociente algebraico con cualquier parte fraccionaria descartada; 81 si el cociente a / b es representable en el tipo del resultado, (a / b) * b + a% b es igual a a.
Como puede ver, falta la implementación definida para el bit de signo, ¿qué sucede?