Heim >Backend-Entwicklung >C++ >Warum ist X % 0 in C ungültig?
Mod Zero nicht möglich?
Warum ist der Ausdruck X % 0 in Programmiersprachen wie C ungültig? Intuitiv könnte man erwarten, dass es den Rest von Null:
Daher rufen die folgenden Ausdrücke undefiniertes Verhalten (UB) hervor:[...] If the second operand of / or % is zero the behavior is undefined [...]Dieses undefinierte Verhalten bedeutet, dass das genaue Ergebnis dieser Ausdrücke unvorhersehbar ist und je nach variieren kann der spezifische Compiler oder die spezifische Implementierung.
X / 0; // UB X % 0; // UB
Darüber hinaus ist es wichtig zu beachten, dass der Rest von -5 % 2 nicht einfach das Negativ von 5 % 2 ist. Das Vorzeichen des Rests, wenn beide Operanden nicht positiv sind, ist die Implementierung -definiert, nicht standardisiert.
Das obige ist der detaillierte Inhalt vonWarum ist X % 0 in C ungültig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!