3 Stimmen

Wie wird diese Schleife beendet und sind die Ergebnisse deterministisch?

Ich habe einen Code gefunden und bin verwirrt, wie die Schleife beendet wird und wie sie funktioniert. Erzeugt das Programm eine deterministische Ausgabe?

Der Grund dafür ist, dass ich verwirrt bin:

1. `someArray` is of size 2, but clearly, the loop goes till size 3,
2. The value is deterministic and it always exits `someNumber` reaches 4

Kann mir bitte jemand erklären, wie das passiert ist?

Der Code wurde nicht korrekt gedruckt, wenn ich spitze Klammern einfügte <> um die Bibliotheksnamen von include.

#include <stdlib.h>
#include <time.h>
#include <stdio.h>

int main() {
    int someNumber = 97;
    int someArray[2] = {0,1};
    int findTheValue;

    for (findTheValue=0; (someNumber -= someArray[findTheValue]) >0; findTheValue++) {

    }
        printf("The crazy value is %d", findTheValue);
    return EXIT_SUCCESS;
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X