VS Code & C

Το Visual Studio Code (επίσης γνωστό ως VS Code) είναι ένα πολύ δημοφιλές πρόγραμμα επεξεργασίας κώδικα, κατασκευασμένο από τη Microsoft, και είναι συμβατό με τα λειτουργικά συστήματα Windows, Linux και macOS. Οι οδηγίες που ακολουθούν, περιγράφουν τη χρήση του VS Code για τη δημιουργία προγραμμάτων γραμμένων σε C, στα Windows 10.

Σημείωση: Χρήστες παλαιότερης έκδοσης των Windows μπορούν να ακολουθήσουν τις ίδιες οδηγίες, εφόσον γνωρίζουν τις εντολές του λειτουργικού τους συστήματος που αντιστοιχούν στις εντολές των Windows 10 που αναφέρονται στο κείμενο.

Προαπαιτούμενα, για τη δημιουργία προγραμμάτων της C στο VS Code

ΒΗΜΑ 1:
Κατεβάστε το VS Code από την επίσημη σελίδα: Visual Studio Code. Εγκαταστήστε το.

ΒΗΜΑ 2:
Ανοίξτε το VS Code και πατήστε το κουμπί που βρίσκετε στην αριστερή στήλη με το όνομα “Extensions”. (Σημείωση: Τοποθετήστε το ποντίκι πάνω από κάθε κουμπί για να δείτε τα ονόματά τους.) Στο πεδίο αναζήτησης, γράψτε τον όρο “C/C++”. Από τα αποτελέσματα που θα εμφανιστούν, επιλέξτε το “C/C++”, με κατασκευαστή τη Microsoft. Πατήστε το κουμπί “Install”. Όταν ολοκληρωθεί η εγκατάσταση της Επέκτασης, κλείστε το VS Code.

εγκατάσταση της επέκτασης C/C++

ΒΗΜΑ 3:
Κατεβάστε το MinGW-w64 από τη σελίδα SourceForge: MinGW-w64. Εγκαταστήστε το σε έναν φάκελο που δεν περιέχει κενά στη διεύθυνσή του. Σε αυτόν τον οδηγό, υποθέτουμε ότι βρίσκεται στον φάκελο με τη διεύθυνση “C:\mingw-w64”.

ΒΗΜΑ 4:
Προσθέστε τη διεύθυνση του φακέλου “bin” του MinGW-w64 στη μεταβλητή PATH των Μεταβλητών Περιβάλλοντος (Environment Variables) των Windows.

  • Στην μπάρα αναζήτησης, πληκτρολογήστε τον όρο “Επεξεργασία των μεταβλητών περιβάλλοντος του συστήματος” (“Edit the system environment variables”) και πατήστε το αποτέλεσμα. Θα εμφανιστεί το πάνελ “Ιδιότητες συστήματος” (“System Properties”), έχοντας την καρτέλα “Για προχωρημένους” (“Advanced”) ανοιχτή. Πατήστε το κουμπί “Μεταβλητές περιβάλλοντος…” (“Environment Variables…”).

  • Επιλέξτε τη μεταβλητή “Path” στον πίνακα με τον τίτλο “Μεταβλητές χρήστη <όνομα τρέχοντα χρήστη>” (“User variables for <όνομα τρέχοντα χρήστη>”), για να κάνετε την αλλαγή μόνο για τον τρέχοντα χρήστη, ή επιλέξτε τη μεταβλητή “Path” στον πίνακα με τον τίτλο “Μεταβλητές συστήματος” (“System variables”), για να κάνετε την αλλαγή για όλους του χρήστες του υπολογιστή. Μετά πατήστε το κουμπί “Επεξεργασία…” (“Edit…”) που βρίσκεται κάτω από τον αντίστοιχο πίνακα.

  • Πατήστε το κουμπί “Δημιουργία” (“New”) και γράψτε (ή κάντε Επικόλληση, αν έχετε πρώτα κάνει Αντιγραφή) τη διεύθυνση του φακέλου “bin” του MinGW-w64. Πατήστε Enter και μετά το κουμπί “OK”. (Σημείωση: Η διεύθυνση θα έχει μορφή παρόμοια με την εξής: “C:\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin”.)


Γράφοντας το πρόγραμμα “Hello World!”, στο VS Code

Δημιουργήστε έναν φάκελο, με το όνομα “helloworld” (όπου στη συνέχεια θα τοποθετηθούν τα αρχεία του προγράμματος). Ανοίξτε το VS Code. Πατήστε “File”, στο κύριο μενού, και μετά την επιλογή “Open Folder…”. Εντοπίστε τον φάκελο “helloworld” και επιλέξτε τον. Αυτός ο φάκελος θεωρείτε τώρα ο Χώρος Εργασίας σας (Workspace), στο VS Code.

Αρχικά, για να δουλέψει σωστά το IntelliSense στον κώδικά μας, πρέπει να κατασκευαστεί ένα αρχείο “c_cpp_properties.json”. Αυτό σας επιτρέπει να επιλέξετε ρυθμίσεις όπως τη διεύθυνση του compiler, το IntelliSense mode, τις διευθύνσεις που ελέγχονται για την ύπαρξη των αρχείων της εντολής #include, ή τις εκδόσεις της C και της C++ που χρησιμοποιείτε. (Σημείωση: Οι ρυθμίσεις του αρχείου “c_cpp_properties.json” διευκολύνουν την επεξεργασία του κώδικα, αλλά δεν μπορούν να δώσουν οδηγίες για το compiling.)

Από το κύριο μενού, πατήστε View > Command Palette… και, στο πεδίο που θα εμφανιστεί, ψάξτε πληκτρολογώντας για την επιλογή “C/C++: Edit Configurations (JSON)” και πατήστε την. Θα δημιουργηθεί το αρχείο “c_cpp_properties.json” μέσα σε έναν φάκελο με το όνομα “.vscode”, όπως μπορείτε να δείτε και στη στήλη αριστερά, στον Explorer.

άνοιγμα του αρχείου “c_cpp_properties.json”

Πηγαίνετε στο αρχείο “c_cpp_properties.json”, που έχει ανοίξει αυτόματα στον Editor, και αλλάξτε την τιμή του χαρακτηριστικού “compilerPath” στη διεύθυνση του compiler “gcc.exe”, αναλόγως με που βρίσκεται στον υπολογιστή σας. (Σημείωση: Η διεύθυνση θα έχει μορφή παρόμοια με την εξής: “C:\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin\\gcc.exe”. Εάν χρησιμοποιήσετε κανονικές καθέτους στη διεύθυνση, φροντίστε να είναι μονές – “/”, εάν χρησιμοποιήσετε ανάποδες καθέτους, πρέπει να είναι διπλές – “\\”.) Στη συνέχεια, πηγαίνετε στο χαρακτηριστικό “intelliSenseMode”, και αλλάξτε την τιμή του σε “gcc-x64”. Αποθηκεύστε το αρχείο και κλείστε το.

Σημείωση: Εάν δημιουργήσετε κάποιο πρόγραμμα που περιλαμβάνει header αρχεία τα οποία δεν βρίσκονται στον τρέχοντα Χώρο Εργασίας ή στη διεύθυνση του Standard Library, πρέπει να προσθέσετε τις διευθύνσεις (των φακέλων των αρχείων σας) στον πίνακα του χαρακτηριστικού “includePath”.

Πηγαίνετε στη στήλη “Explorer”, στο αριστερό μέρος του προγράμματος. Πλησιάστε το ποντίκι στην ετικέτα με το όνομα του φακέλου σας (“helloworld”), για να εμφανιστούν τα εικονίδια, και πατήστε το “New File” για να φτιάξετε το πρώτο σας αρχείο. Δώστε του το όνομα “helloworld.c” (χωρίς τα εισαγωγικά) και πατήστε Enter. Το αρχείο θα ανοίξει αυτόματα στα δεξιά της στήλης “Explorer”.

δημιουργία νέου αρχείου

Γράψτε τον παρακάτω κώδικα στο αρχείο “helloworld.c”.

#include <stdio.h>

int main(void) {

  char str[4][6] = {"Hello", " ", "World", "!"};

  for (int i = 0; i < 4; i++) {
    printf("%s", str[i]);
  }

  return 0;
}

Πατήστε File > Save, για να αποθηκεύσετε το αρχείο.

Κάνοντας compile το “helloworld.c”, στο VS Code

Αρχικά, αυτό που χρειαζόμαστε είναι ένα αρχείο “tasks.json”, το οποίο και θα δώσει τις οδηγίες στο VS Code για το πώς θέλουμε να κάνει compile το πρόγραμμα που έχουμε γράψει.

Από το κύριο μενού, πατήστε Terminal > Configure Default Build Task. Αυτό θα εμφανίσει μία λίστα από έτοιμα tasks για μεταγλωττιστές της C. Επιλέξτε το “C/C++: gcc.exe build active file”, για να φτιάξετε ένα task που θα χρησιμοποιήσει τον compiler “gcc” για να μεταγλωττίσει το τρέχον αρχείο (το οποίο και θεωρείται το “active file”). Θα δημιουργηθεί το αρχείο “tasks.json” μέσα στον φάκελο “.vscode”. (Το αρχείο θα ανοίξει αυτόματα στον editor. Μπορείτε να το κλείσετε.)

επιλογή του έτοιμου task για compiling

Αυτό που μένει τώρα είναι να τρέξετε το task που είναι γραμμένο στο αρχείο “tasks.json”. Σιγουρευτείτε ότι η καρτέλα του προγράμματος που θέλετε να μεταγλωττίσετε είναι η ανοιχτή καρτέλα στο VS Code και, από το κύριο μενού, πατήστε Terminal > Run Build Task. Μία κονσόλα (terminal) θα ανοίξει κάτω από το πρόγραμμα, στο οποίο θα καταγραφούν πληροφορίες για το αν η διαδικασία ήταν επιτυχής ή όχι. Όταν η μεταγλώττιση ολοκληρωθεί, θα εμφανιστεί στην κονσόλα μια φράση όπως η ακόλουθη: “Terminal will be reused by tasks, press any key to close it.”.

“command”: Το πρόγραμμα το οποίο θα εκτελεστεί, που στη συγκεκριμένη περίπτωση είναι ο compiler.

“args”: Πίνακας με τα ορίσματα που δίνονται στον compiler. Ο αριθμός αυτών των ορισμάτων μπορεί να ποικίλει, αλλά η σειρά με την οποία εμφανίζονται, πρέπει να είναι αυτή που περιμένει ο compiler. Εάν, για παράδειγμα, τα ορίσματα έχουν μορφή παρόμοια με την ακόλουθη: ["-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe"], τότε:

  • Στη θέση του 2ου ορίσματος, μπορείτε να δώσετε την τιμή "${file}", αν θέλετε να κάνετε compile το τρέχον αρχείο, ή την τιμή "${workspaceFolder}\\*.c" , αν θέλετε να κάνετε compile όλα τα αρχεία με την επέκταση “.c”, που βρίσκονται στον φάκελο του πρότζεκτ σας.
  • Στη θέση του 4ου ορίσματος, μπορείτε να δώσετε την τιμή "${fileDirname}\\${fileBasenameNoExtension}.exe". Το "${fileDirname}" δηλώνει ότι το εκτελέσιμο αρχείο που θα δημιουργηθεί, θα τοποθετηθεί στον φάκελο που βρίσκεται το τρέχον αρχείο, ενώ το "${fileBasenameNoExtension}.exe" δηλώνει ότι το εκτελέσιμο αρχείο θα έχει το ίδιο όνομα με το τρέχον αρχείο, αλλά την επέκταση “.exe”. Αντί για το "${fileBasenameNoExtension}.exe", μπορείτε να δώσετε συγκεκριμένο όνομα στο εκτελέσιμο αρχείο σας: για παράδειγμα, το όρισμα μπορεί να είναι "${fileDirname}\\myProgram.exe".

“label”: Η τιμή αυτού του χαρακτηριστικού είναι το όνομα του task που θα εμφανίζεται στη λίστα των tasks. Μπορείτε να την αλλάξετε σε ό,τι θέλετε.

“group”: “isDefault”: Αν η τιμή αυτού του χαρακτηριστικού είναι true, τότε αυτό το task θα είναι εκείνο που θα τρέξει αυτόματα, όταν επιλέγετε, από το κύριο μενού, Terminal > Run Build Task….


Τρέχοντας το “helloworld.exe”, στο VS Code

Όπως μπορείτε να δείτε στον Explorer, ένα νέο αρχείο έχει δημιουργηθεί μέσα στον φάκελο “helloworld”, με το όνομα “helloworld.exe”. Είναι το πρόγραμμά σας, σε μορφή εκτελέσιμου αρχείου. Για να το τρέξετε, ανοίξτε μια καινούρια κονσόλα, πατώντας Terminal > New Terminal.

Σιγουρευτείτε ότι ο κατάλογος (directory) στον οποίο βρίσκεστε είναι αυτός που περιέχει το “helloworld.exe”: Η τελευταία γραμμή στην κονσόλα πρέπει δείχνει τη διεύθυνση του φακέλου στον οποίο έχει αποθηκευθεί το εκτελέσιμο αρχείο. Εάν αυτό δεν ισχύει, πληκτρολογήστε στην κονσόλα τα εξής: την εντολή “cd” (χωρίς τα εισαγωγικά), μετά ένα κενό και μετά τη διεύθυνση του φακέλου που περιέχει το αρχείο “helloworld.exe”, και πατήστε Enter. Στη συνέχεια:

  • Για να τρέξετε το πρόγραμμα στην ίδια την κονσόλα, πληκτρολογήστε: .\helloworld.exe (χωρίς τα εισαγωγικά) και πατήστε Enter.

  • Για να τρέξετε το πρόγραμμα σε ένα ανεξάρτητο παράθυρο, πληκτρολογήστε: start .\helloworld.exe (χωρίς τα εισαγωγικά) και πατήστε Enter.

Σημείωση: Στην περίπτωση που τρέξετε το πρόγραμμα σε ανεξάρτητο παράθυρο, θα παρατηρήσετε ότι το παράθυρο εξαφανίζεται αμέσως. Αυτό συμβαίνει γιατί ο συγκεκριμένος κώδικας δεν περιλαμβάνει κάποια εντολή που να λέει στο πρόγραμμα να μείνει ανοιχτό, οπότε απλώς εκτελείται και μετά κλείνει.

Κάνοντας debug το “helloworld.exe”, στο VS Code

Θα χρησιμοποιήσουμε τον debugger “GDB” για να κάνουμε debug το πρόγραμμα. Για να δώσουμε τις απαραίτητες οδηγίες στο VS Code για αυτήν τη διαδικασία, θα χρειαστούμε ένα αρχείο “launch.json”.

Σιγουρευτείτε ότι η καρτέλα του προγράμματος που θέλετε να κάνετε debug είναι η ανοιχτή καρτέλα στο VS Code και, από το κύριο μενού, πατήστε Run > Add Configuration… και μετά την επιλογή “C++ (GDB/LLDB)”. Θα εμφανιστεί μια λίστα από έτοιμες ρυθμίσεις. Πατήστε την επιλογή “gcc.exe build and debug active file”.

επιλογή των έτοιμων ρυθμίσεων για debugging

Στα επόμενα δευτερόλεπτα, θα γίνουν αυτόματα τα εξής: Θα δημιουργηθεί το αρχείο “launch.json” μέσα στον φάκελο “.vscode” και θα ανοίξει στον editor. Το πρόγραμμα θα γίνει compile (θα δημιουργηθεί ένα εκτελέσιμο αρχείο, αν δεν υπάρχει ήδη) και θα τρέξει στην κονσόλα. Τέλος, θα παρατηρήσετε ότι η ανοιχτή στήλη στα αριστερά δεν είναι πια ο Explorer, αλλά το Run.

Για μία ακόμα φορά, θα παρατηρήσετε ότι το πρόγραμμα θα εκτελεστεί και θα κλείσει αμέσως, κάνοντας και τη διαδικασία του debugging να ξεκινήσει και να ολοκληρωθεί κατευθείαν. Αυτό συμβαίνει επειδή δεν υπάρχουν ούτε breakpoints, ούτε κάποια εντολή στον κώδικα για να το σταματήσουν.

Το πρώτο βήμα λοιπόν, είναι να δώσουμε την οδηγία στον debugger να κάνει μία παύση στην αρχή του προγράμματος, η οποία στη C είναι η συνάρτηση main(). Πηγαίνετε στο “launch.json”, που είναι ανοιχτό στον editor, και αλλάξτε την τιμή του χαρακτηριστικού “stopAtEntry”, από false, σε true. Στη συνέχεια, σιγουρευτείτε ότι η τιμή του χαρακτηριστικού “preLaunchTask” είναι η ίδια με την τιμή του χαρακτηριστικού “label”, που βρίσκεται στο αρχείο “tasks.json”. Πατήστε File > Save, για να αποθηκεύσετε το αρχείο, και μετά κλείστε το. Η ανοιχτή καρτέλα στον editor τώρα πρέπει να είναι το “helloworld.c”.

Από το κύριο μενού, πατήστε Run > Start Debugging, για να ξεκινήσετε το debugging με τις καινούριες οδηγίες αυτήν τη φορά.

debugging

Το πρόγραμμα θα γίνει και πάλι compile και θα αρχίσει να τρέχει στην κονσόλα, κάνοντας παύση αυτήν τη φορά, στη γραμμή που βρίσκεται η πρώτη πρόταση (statement) της συνάρτησης main().

Περιγραφή του editor κατά τη διάρκεια του debugging:

  • Πάνω από το αρχείο του κώδικα εμφανίζεται μια μικρή μπάρα με τα εικονίδια ελέγχου.
  • Κάτω από το αρχείο του κώδικα ανοίγει το τμήμα του editor που περιλαμβάνει, ανάμεσα σε άλλες καρτέλες, εκείνη της κονσόλας (Terminal) και του Debug Console, που περιέχει λεπτομέρειες για το debugging.
  • Στα αριστερά του αρχείου του κώδικα, η ανοιχτή στήλη είναι η στήλη Run, που περιέχει τις λίστες: Variables, Watch, Call Stack και Breakpoints.
  • Τέλος, θα παρατηρήσετε ότι ένας δείκτης έχει εμφανιστεί στα αριστερά της γραμμής του κώδικα στην οποία έχει κάνει παύση ο debugger.

Όταν κάνουμε debugging, έχουμε τη δυνατότητα να τρέξουμε το πρόγραμμα, σταματώντας επιλεκτικά σε συγκεκριμένα σημεία και εκτελώντας μία προς μία τις προτάσεις του κώδικα. Από τα εικονίδια ελέγχου, πατήστε το Step Over. Αυτό θα εκτελέσει την πρόταση (ή τις προτάσεις) της γραμμής στην οποία βρίσκεται ο δείκτης, μετακινώντας τον στη συνέχεια στην επόμενη γραμμή.

το εικονίδιο ελέγχου Step Over

Στα αριστερά του κώδικα, η λίστα Variables δείχνει τις τιμές των μεταβλητών, σε κάθε παύση της εκτέλεσης του προγράμματος. Συνεχίστε να πατάτε το Step Over, για να εκτελέσετε και τις υπόλοιπες γραμμές του προγράμματος, παρακολουθώντας παράλληλα τη λίστα. Θα παρατηρήσετε, καθώς εκτελείτε τον κώδικα του βρόχου for, την τιμή του “i” να αλλάζει.

Μπορείτε επίσης να ελέγξετε τις τιμές των μεταβλητών από τον ίδιο τον κώδικα, τοποθετώντας το ποντίκι πάνω από το όνομα της κάθε μεταβλητής, σε κάθε παύση της εκτέλεσης του προγράμματος, κατά την διάρκεια του debugging.

η λίστα Variables

Κάτω από τη λίστα Variables είναι η λίστα Watch. Μπορείτε να προσθέσετε μεταβλητές επιλεκτικά σε αυτή, για να τις βρίσκετε πιο εύκολα, ή και ολόκληρες προγραμματιστικές εκφράσεις, που θα υπολογίζονται σε κάθε παύση της εκτέλεσης του προγράμματος. Για να προσθέσετε μια μεταβλητή ή μια έκφραση, πατήστε το εικονίδιο με το σύμβολο “+”, που εμφανίζεται δίπλα από το όνομα της λίστας, όταν πλησιάσετε το ποντίκι. Πληκτρολογήστε το όνομα της μεταβλητής ή την έκφραση που σας ενδιαφέρει και πατήστε Enter.

Πληροφορίες για τα εικονίδια ελέγχου:

  • Continue/Pause: Συνεχίζει ή σταματάει την εκτέλεση του κώδικα.
  • Step Over: Εκτελεί την πρόταση (ή τις προτάσεις) της γραμμής στην οποία βρίσκεται ο δείκτης, μετακινώντας τον στη συνέχεια στην επόμενη γραμμή.
  • Step Into: Μετακινεί το δείκτη στην πρώτη γραμμή της πρώτης συνάρτησης της γραμμής στην οποία βρίσκεται.
  • Step Out: Εκτελεί ολόκληρη τη συνάρτηση μέσα στην οποία βρίσκεται ο δείκτης και στη συνέχεια τον μετακινεί στην επόμενη πρόταση, από εκείνη που κάλεσε τη συνάρτηση στην οποία βρισκόταν. Εάν βρεθεί κάποιο breakpoint πριν ολοκληρωθεί αυτή η διαδικασία, μετακινεί το δείκτη στη γραμμή του breakpoint.
  • Restart: Τρέχει τον κώδικα από την αρχή, επανεκκινώντας τη διαδικασία του debugging.
  • Stop: Σταματάει τη διαδικασία του debugging.

“program”: Το πρόγραμμα το οποίο θέλετε να κάνετε debug. Μπορείτε να δώσετε την τιμή "${fileDirname}\\${fileBasenameNoExtension}.exe" σε αυτό το χαρακτηριστικό. Το "${fileDirname}" δηλώνει ότι το πρόγραμμα βρίσκεται στον ίδιο φάκελο με το τρέχον αρχείο, ενώ το "${fileBasenameNoExtension}.exe" δηλώνει ότι το αρχείο που θα γίνει debug έχει το ίδιο όνομα με το τρέχον αρχείο, αλλά την επέκταση “.exe”.

“stopAtEntry”: Αν η τιμή αυτού του χαρακτηριστικού είναι true, όταν ξεκινήσετε το debugging, ο debugger θα κάνει παύση στην αρχή του προγράμματος, η οποία στη C και τη C++ είναι η συνάρτηση main().

“preLaunchTask”: Η τιμή αυτού του χαρακτηριστικού είναι το όνομα του task που θα εκτελεστεί πριν ξεκινήσει η διαδικασία του debugging. Εδώ μπορείτε να βάλετε την ίδια τιμή με αυτήν του χαρακτηριστικού “label” του task που σας ενδιαφέρει. (Θα βρείτε τα ονόματα των tasks καταγραμμένα στο αρχείο “tasks.json” που έχετε δημιουργήσει.)


Τρέχοντας το “helloworld.exe” με την επέκταση “Code Runner”, στο VS Code

Ένας διαφορετικός τρόπος για να τρέξετε τα προγράμματά σας, στο VS Code, είναι χρησιμοποιώντας την επέκταση “Code Runner”. Αυτή σας επιτρέπει, με το πάτημα ενός κουμπιού, να κάνετε compile και να τρέξετε το πρόγραμμά σας, στο πάνελ “Output”, ή την ενσωματωμένη κονσόλα. Επιπλέον, τα αρχεία “tasks.json” και “launch.json” δεν είναι απαραίτητο να υπάρχουν, καθώς η επέκταση παίρνει οδηγίες από τις δικές τις ρυθμίσεις για το compiling (και το debugging απλώς δεν την αφορά).

Οι οδηγίες που ακολουθούν, προτείνουν αρχικά κάποιες συγκεκριμένες ρυθμίσεις. Όταν κατανοήσετε πως μπορείτε να δουλέψετε με την επέκταση, μπορείτε να τις αλλάξετε, εάν διαφορετικές ρυθμίσεις σας διευκολύνουν περισσότερο.

ΒΗΜΑ 1:
Πηγαίνετε στις Επεκτάσεις (Extensions) του VS Code και κατεβάστε την επέκταση “Code Runner”, με κατασκευαστή τον Jun Han (συμβολικό όνομα επέκτασης: formulahendry.code-runner).

ΒΗΜΑ 2:
Από το κύριο μενού, πατήστε File > Preferences > Settings.

Στην καρτέλα “User”, πατήστε, από τη λίστα στα αριστερά, την επιλογή “Extensions”, και μετά την επιλογή “Run Code configuration”. Αλλάξτε τις εξής ρυθμίσεις:

  • Clear Previous Output: Ενεργοποιήστε το.
  • Preserve Focus: Απενεργοποιήστε το.
  • Run In Terminal: Ενεργοποιήστε το.
  • Save All Files Before Run: Ενεργοποιήστε το.
  • Save File Before Run: Ενεργοποιήστε το.

Στη συνέχεια, πηγαίνετε στην καρτέλα “Workspace”, που βρίσκετε δεξιά από την καρτέλα “User”. Σιγουρευτείτε ότι βρίσκεστε ακόμα στο “Run Code configuration” των “Extensions”, και ψάξτε, ανάμεσα στις ρυθμίσεις, για τον τίτλο “Executor Map”. Πατήστε, κάτω από αυτόν, τη φράση “Edit in settings.json”. Θα δημιουργηθεί το αρχείο “settings.json”, μέσα στον φάκελο “.vscode”, και θα ανοίξει στον Editor.

Γράψτε τον παρακάτω κώδικα, έτσι ώστε το αρχείο “settings.json” να έχει το περιεχόμενο:

{
    "code-runner.executorMap": {
        "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt"
    }
}

Αποθηκεύστε το αρχείο.

Αυτό που μόλις κάνατε, είναι να γράψετε τις οδηγίες που θα χρησιμοποιήσει η επέκταση, όταν τρέχει προγράμματα της γλώσσας C. Σύμφωνα λοιπόν με αυτές τις οδηγίες, θα γίνουν τα εξής:

  • Ο Τρέχων Κατάλογος (Current Working Directory) αλλάζει στον κατάλογο του ανοιχτού, στον Editor, αρχείου. (cd $dir)
  • Καλείται ο compiler “gcc” να μεταγλωττίσει το ανοιχτό, στον Editor, αρχείο. (gcc $fileName) Το αρχείο που θα δημιουργηθεί, μετά τη μεταγλώττιση, θα έχει το ίδιο όνομα με το τρέχον αρχείο, αλλά όχι την επέκτασή του (στα Windows, προστίθεται η επέκταση “.exe”). (-o $fileNameWithoutExt)
  • Τέλος, θα εκτελεστεί το πρόγραμμα που βρίσκεται στον ίδιο κατάλογο με το τρέχον αρχείο και έχει το ίδιο όνομα με αυτό, αλλά όχι την επέκτασή του. Πολύ απλά, θα τρέξει το πρόγραμμα που μόλις δημιούργησε ο compiler, που στην περίπτωση αυτή, είναι το “helloworld.exe”. ($dir$fileNameWithoutExt)

ΒΗΜΑ 3:
Το μόνο που μένει τώρα, είναι να τρέξετε το πρόγραμμά σας. Σιγουρευτείτε ότι το αρχείο που είναι ανοιχτό στον Editor, είναι αυτό που θέλετε να κάνετε compile. Στη συνέχεια, πατήστε το κουμπί Play, που βρίσκεται πάνω από το αρχείο του κώδικα, στην πάνω-δεξιά γωνία του Editor.

το κουμπί Play, της επέκτασης Code Runner

Θα δείτε το πρόγραμμά σας να εκτελείτε κανονικά, στην ενσωματωμένη κονσόλα.

Συμβουλές: Εάν επιθυμείτε να καθαρίσετε την κονσόλα από τα αποτελέσματα προηγούμενων εντολών, μπορείτε να γράψετε την εντολή “cls” (χωρίς τα εισαγωγικά). Εάν επιθυμείτε να διακόψετε την εκτέλεση του προγράμματος, την ώρα που αυτό τρέχει στην κονσόλα, πατήστε στο πληκτρολόγιό σας το συνδυασμό πλήκτρων “Ctrl C”.

Ακολουθεί ένα παράδειγμα, για το πώς μπορείτε να γράψετε τις οδηγίες για την επέκταση Code Runner, στο αρχείο settings.json, όταν το πρόγραμμά σας είναι χωρισμένο σε περισσότερα από ένα αρχεία.

Γράψτε τον παρακάτω κώδικα, έτσι ώστε το αρχείο “settings.json” να έχει το περιεχόμενο:

{
    "code-runner.executorMap": {
        "c": "cd $workspaceRoot && gcc source_files\\*.c -o output_files\\program_c && .\\output_files\\program_c"
    }
}
  • Αυτήν τη φορά, οι οδηγίες αλλάζουν τον Τρέχοντα Κατάλογο (Current Working Directory) στον φάκελο ολόκληρου του τρέχοντος πρότζεκτ. (cd $workspaceRoot)
  • Στη συνέχεια, καλείται ο compiler “gcc” να μεταγλωττίσει όλα τα αρχεία που θα βρει στον φάκελο “source_files” του συγκεκριμένου καταλόγου, με την επέκταση “.c”. (gcc source_files\\*.c) Το αρχείο που θα δημιουργηθεί, μετά τη μεταγλώττιση, θα έχει το όνομα “program_c” (και την επέκταση “.exe”, στα Windows), και θα τοποθετηθεί στον φάκελο “output_files”, ο οποίος βρίσκεται στον Τρέχοντα Κατάλογο. (-o output_files\\program_c)
  • Τέλος, θα εκτελεστεί το πρόγραμμα που βρίσκεται στον φάκελο “output_files”, του Τρέχοντα Καταλόγου, και έχει το όνομα “program_c” (και την επέκταση “.exe”, στα Windows). Δηλαδή, θα τρέξει το πρόγραμμα που μόλις δημιούργησε ο compiler, που στην περίπτωση αυτή, είναι το “program_c.exe”. (.\\output_files\\program_c)

Σημείωση: Για να δουλέψει σωστά αυτός ο κώδικας, πρέπει να δημιουργήσετε τους φακέλους “source_files” και “output_files”, πριν εκτελέσετε το πρόγραμμα. Επίσης, μπορείτε να μάθετε περισσότερα για το πώς να γράφετε τις οδηγίες για το Code Runner, από την ίδια τη σελίδα που αναφέρεται στην επέκταση, στα Extensions του VS Code.


Βασικές, συνοπτικές οδηγίες για δημιουργία, compiling, debugging και εκτέλεση προγραμμάτων της C, στο VS Code

  • Κατεβάστε και εγκαταστήστε το VS Code.
  • Κατεβάστε το πακέτο MinGW-w64 και εγκαταστήστε το σε έναν φάκελο που δεν περιέχει κενά στη διεύθυνσή του.
  • Ανοίξτε το VS Code και κατεβάστε από το ίδιο το πρόγραμμα την επέκταση C/C++, με κατασκευαστή τη Microsoft. Κλείστε το VS Code.
  • Προσθέστε τη διεύθυνση του φακέλου “bin” του MinGW-w64 στη μεταβλητή PATH των Μεταβλητών Περιβάλλοντος (Environment Variables) των Windows.
  • Αφού φτιάξετε έναν φάκελο για να τοποθετήσετε το πρότζεκτ σας, ανοίξτε το VS Code, πατήστε, από το κύριο μενού, File > Open Folder… και επιλέξτε τον φάκελό σας.
  • Πατήστε, από το κύριο μενού, View > Command Palette… και, στο πεδίο που θα εμφανιστεί, ψάξτε πληκτρολογώντας για την επιλογή “C/C++: Edit Configurations (JSON)” και πατήστε την. (Θα δημιουργηθεί το αρχείο “c_cpp_properties.json”.)
  • Πηγαίνετε στο αρχείο “c_cpp_properties.json”, και αλλάξτε την τιμή του χαρακτηριστικού “compilerPath” στη διεύθυνση του compiler “gcc.exe”, αναλόγως με που βρίσκεται στον υπολογιστή σας. Στη συνέχεια, πηγαίνετε στο χαρακτηριστικό “intelliSenseMode”, και αλλάξτε την τιμή του σε “gcc-x64”.
  • Πατήστε New File, στην ετικέτα με το όνομα του φακέλου σας, και ονομάστε το πρόγραμμά σας.
  • Γράψτε τον κώδικα που επιθυμείτε και αποθηκεύστε το αρχείο σας.
  • Πατήστε, από το κύριο μενού, Terminal > Configure Default Build Task > C/C++: gcc.exe build active file, για να δημιουργήσετε το task που περιέχει οδηγίες για το compiling. (Θα δημιουργηθεί το αρχείο “tasks.json”.)
  • Πατήστε, από το κύριο μενού, Terminal > Run Build Task, για να κάνετε compile τον κώδικά σας.
  • Πατήστε, από το κύριο μενού, Run > Add Configuration… > C++ (GDB/LLDB) > gcc.exe build and debug active file, για να δημιουργήσετε το αρχείο των ρυθμίσεων που περιέχει οδηγίες για το debugging. (Θα δημιουργηθεί το αρχείο “launch.json”.)
  • Πηγαίνετε στο αρχείο “launch.json” και αλλάξτε την τιμή του χαρακτηριστικού “stopAtEntry”, από false, σε true. Αποθηκεύστε την αλλαγή.
  • Πατήστε, από το κύριο μενού, Run > Start Debugging, για να κάνετε debug τον κώδικά σας.
  • Για να τρέξετε το πρόγραμμά σας στην ενσωματωμένη κονσόλα, πληκτρολογήστε: “.\helloworld.exe” (χωρίς τα εισαγωγικά) και πατήστε Enter.
  • Για να τρέξετε το πρόγραμμά σας σε ένα ανεξάρτητο παράθυρο, πληκτρολογήστε: “start .\helloworld.exe” (χωρίς τα εισαγωγικά) και πατήστε Enter.

Θα βρείτε την επίσημη ιστοσελίδα του VS Code εδώ.
Θα βρείτε τις επίσημες, αγγλικές οδηγίες για τη δημιουργία προγραμμάτων της C++ εδώ.

Αρθρογράφος: Constantina32

Leave a Comment

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

13 − 12 =

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει τα ανεπιθύμητα σχόλια. Μάθετε πώς υφίστανται επεξεργασία τα δεδομένα των σχολίων σας.