2016-05-30 42 views
21

Ich versuche C/C++ in Visual Studio Code zu erstellen. Ich habe C/C++ und alle relevanten Erweiterungen installiert.Visual Studio Code includePath

#include <stdio.h> 
int main() { 
    printf("Test C now\n"); 
    return 0; 
} 

Aber es gibt eine grüne Linie unter #include <stdio.h> sagen „um die Einstellungen umfassen Pfad hinzufügen“. Wenn ich darauf klicke, wird "c_cpp_properties.json" angezeigt.

Wie und wo kann ich Pfade in den folgenden Konfigurationen hinzufügen?

"configurations": [ 
    { 
     "name": "Mac", 
     "includePath": ["/usr/include"] 
    } 
] 

Antwort

24

Wie und wo kann ich hinzufügen, sind Pfade in den Konfigurationen unten?

Die Liste ist eine durch Kommas getrennte Liste, daher würde das Hinzufügen eines Include-Pfades ungefähr so ​​aussehen;

"configurations": [ 
    { 
     "name": "Mac", 
     "includePath": ["/usr/local/include", 
      "/path/to/additional/includes", 
      "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include" 
     ] 
    } 
] 

Quelle; cpptools blog 31 March 2016.

Die verknüpfte Quelle enthält ein gif, das das Format für die Win32-Konfiguration zeigt, aber das gleiche gilt für die anderen.

Das obige Beispiel enthält den Pfad SDK (OSX 10.11), wenn Xcode installiert ist.

Hinweis Ich finde es kann eine Weile dauern zu aktualisieren, sobald der Include-Pfad geändert wurde.

Die Erweiterung cpptools kann found here sein.

Weitere Dokumentation (von Microsoft) zur C++ - Sprachunterstützung in VSCode kann found here sein.


Aus Gründen der Erhaltung (aus der Diskussion), sind die folgende grundlegende Schnipsel für den Inhalt der tasks.json Datei entweder eine C++ Datei oder eine C-Datei zu kompilieren und auszuführen. Sie ermöglichen Leerzeichen im Dateinamen (erfordert das Entkommen der zusätzlichen Anführungszeichen im JSON mit \"). Die Shell wird as the runner verwendet, so dass die Kompilierung (clang...) und die Ausführung (&& ./a.out) des Programms möglich ist. Außerdem wird davon ausgegangen, dass die Datei tasks.json im lokalen Arbeitsbereich (unter dem Verzeichnis .vscode) "lebt". Weitere task.json-Details, wie unterstützte Variablen usw., können found here sein.

Für C++;

{ 
    "version": "0.1.0", 
    "isShellCommand": true, 
    "taskName": "GenericBuild", 
    "showOutput": "always", 
    "command": "sh", 
    "suppressTaskName": false, 
    "args": ["-c", "clang++ -std=c++14 -Wall -Wextra -pedantic -pthread \"${file}\" && ./a.out"] 
} 

Für C;

{ 
    "version": "0.1.0", 
    "isShellCommand": true, 
    "taskName": "GenericBuild", 
    "showOutput": "always", 
    "command": "sh", 
    "suppressTaskName": false, 
    "args": ["-c", "clang -std=c11 -Wall -Wextra -pedantic -pthread \"${file}\" && ./a.out"] // command arguments... 
} 
+0

Lassen Sie uns [diese Diskussion im Chat fortsetzen] (http://chat.stackoverflow.com/rooms/113606/discussion-between-niall-and-stdio-h). – Niall

+0

@ stdio.h. Ich empfehle ein gutes Buch über C, um in die Sprache einzutauchen; Es gibt eine Liste hier auf SO unter http://stackoverflow.com/q/562303/3747990. Wenn Sie interessiert sind, gibt es auch eine C++ - Liste; http://stackoverflow.com/q/388242/3747990. Beide Listen enthalten mindestens ein online verfügbares Buch, das Sie auf den neuesten Stand bringt und vielen anderen Materialien, die Sie auf SO und anderen Tutorial-Websites finden, einen großartigen Kontext bietet. Ich mag diese Liste, weil sie eine kuratierte Liste ist und nicht nur eine zufällige Müllkippe aus dem Internet. – Niall

+0

Vielen Dank für das Posten. Spart mir viele Minuten! – sivabudh

3

Für Mac-Anwender installiert nur Kommandozeilen-Tools statt Xcode, überprüfen Sie die /Library/Developer/CommandLineTools/ Verzeichnis, zum Beispiel ::

"configurations": [{ 
    "name": "Mac", 
    "includePath": [ 
     "/Library/Developer/CommandLineTools/usr/lib/clang/8.1.0/include/", 
     "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1/tr1/", 
     "/usr/include/c++/4.2.1", 
     "/usr/local/include", 
     "/usr/include" 
    ] 
}] 

Note: Sie können auch eine c_cpp_properties.json erzeugen oder bearbeiten Datei mit dem Befehl C/Cpp: Edit Configurations aus der Befehlspalette (⇧⌘P).