Schwerwiegender Fehler C1049

Ungültiges numerisches Argument „value“.

Der CL.EXE-Befehlszeilenparser hat einen Wert gefunden, in dem ein numerisches Argument erwartet wurde.

Ein C1049-Fehler kann auftreten, wenn der Compiler kein numerisches Argument für eine der folgenden Compileroptionen finden kann:

/constexpr:depth
/constexpr:backtrace
/constexpr:steps

Befehlszeilencompileroptionen, die ein numerisches Argument erwarten, können auch Berichte Command line error D8004, Command line error D8021, , Command line warning D9002Command line warning D9014oder Command line warning D9024.

Um diesen Fehler zu beheben, untersuchen Sie die Befehlszeile auf falsch eingefügte oder fehlende Argumente. Stellen Sie sicher, dass zwischen Optionen und Argumenten kein unerwartetes Leerzeichen vorhanden ist. Die letzte Befehlszeile kann durch Makros, Umgebungsvariablen oder andere Buildsystemvorgänge generiert werden. Deshalb ist es wichtig, die tatsächliche Befehlszeile zu betrachten, die an den Compiler übergeben wurde.

  • In Befehlsdateien oder Makefiles können Sie einen Echobefehl verwenden, um die tatsächliche Befehlszeile zu melden.

  • Öffnen Sie in Visual Studio das Dialogfeld "Eigenschaftenseiten " des Projekts. Ändern Sie auf der Seite "Konfigurationseigenschaften>C/C++>Allgemein" die Eigenschaft "Startbanner unterdrücken" in "Nein". Klicken Sie auf OK, um die Änderungen zu speichern. Das Ausgabefenster zeigt nun die Befehlszeile beim Erstellen direkt nach der Copyrightzeile an.

Andere Buildsysteme verfügen möglicherweise über Protokolldateien oder ausführliche Optionen, um die tatsächlich verwendeten Befehle anzuzeigen. Weitere Informationen finden Sie in der Dokumentation zum Buildsystem.