파이썬과 달리 C는 양의 제수와 함께 모듈로를 사용할 때 음수 값을 출력합니다. 이는 연산이 ISO/IEC 14882:2003(E)에 따라 C에서 구현 정의되기 때문에 발생합니다.
"두 피연산자가 모두 음수가 아니면 나머지는 음수가 아닙니다. 그렇지 않은 경우 나머지의 부호는 다음과 같습니다. 구현 정의."
이 정의를 사용하면 나누기 및 모듈로가 수행되는 프로세서 명령어 세트에서 일반적인 최적화가 가능합니다. 함께.
음수 나머지는 다음 규칙에 따라 일관성을 보장합니다.
이는 음수를 양수이면 몫은 음수(또는 0)가 됩니다.
이 사양의 이론적 근거는 다음과 같습니다.
음수 나머지가 직관에 반하는 것처럼 보일 수 있지만 이는 C의 모듈로 구현 정의 특성의 결과입니다. 정수 나누기의 일관성을 보장하고 성능을 최적화합니다.
위 내용은 C Modulo가 음수를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!