Variable Argumente in C scheinen ja auch besonders schwierig zu sein, oder man weiß es nicht, wieso printf so seltsam auf eine fehlerhafte Anzahl Argumente reagiert:

#include <stdio.h>
int main(void) {
    int foo = 1;
    int bar = 0;
    printf("%d, %d\n", foo && bar);
    return 0;
}

Mal schnell die Berechnung einer boolschen Variable in printf gejagt und vergessen die && gegen Kommas zu ersetzen und schon sieht man die seltsamsten Ergebnisse:

0, -1079242984

In welchem Speicher printf da wohl nach dem zweiten Integer sucht? Wie schön sind doch Exceptions… Nach so einem Fehler kann man ewig suchen.