Operator < schneller als <=? Performance-Vergleich in C++
Hallo zusammen! Ich bin ein C++-Anfänger und habe eine Frage zur Performance von Vergleichsoperatoren.
Ich schreibe eine Schleife, die ein Array mit 10 Millionen Elementen durchläuft, und ich muss eine Aktion ausführen, solange der Index kleiner oder gleich einem bestimmten Wert ist. Ich verwende `for (int i = 0; i <= n; i++)`. Aber mein Kollege sagte, es sei besser, `i < n + 1` zu verwenden, weil der Operator `<` schneller sei als `<=`. Er behauptet, dass auf Assembly-Ebene `<` in einem CPU-Takt ausgeführt wird, während `<=` zwei Takte benötigt, weil die CPU zusätzlich die Gleichheit prüfen muss.
Ich habe beide Varianten in meinem Code ausprobiert:
```cpp
#include
#include
const int N = 10000000;
void test_less_equal() {
int sum = 0;
for (int i = 0; i <= N; ++i) {
```
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen