Frage zu Standardkonformität



  • Ist folgender Code durch einen C-Standard abgedeckt?

    int foo(){
       return 0;
    }
    
    int main(){
       foo(4,5);
    
       return 0;
    }
    

    Konkret geht es mir darum ob ich der Funktion foo trotz der leeren Parameterliste, Variablen übergeben kann.

    Es geht hier nicht um ein reales Beispiel sonder nur eine theoretische Überlegung die ich mit einem Komilitone hatte.

    Getestet habe ich es mit MSVC und GCC, in beiden Fällen wurde es ohne Beanstandung kompiliert und ausgeführt. Allerdings habe ich zu dieser Konstelation nichts im C-Standard gefunden, deswegen die oben gestellte Frage, evtl. weis hier ja jemand mehr.



  • Nein, nicht standardkonform:
    http://www.iso-9899.info/n1570.html#6.7.6.3


Anmelden zum Antworten