Walkthrough: Het compileren van een C-programma op de commandoregel

  • 9/10/2020
  • 10 minuten te lezen
    • c
    • n
    • m
    • M
    • m
    • +2

Visual C++ is voorzien van een C-compiler die u kunt gebruiken om alles te maken, van eenvoudig basic console programma ‘ s om de volledige Windows Desktop applicaties, mobiele applicaties, en nog veel meer.,

deze walkthrough laat zien hoe je een basic, “Hello, World”-stijl C programma maakt met behulp van een teksteditor, en het vervolgens compileert op de commandoregel. Als je liever in C++ werkt op de commandoregel, zie Walkthrough: een Native C++ programma compileren op de commandoregel. Als je de Visual Studio IDE wilt proberen in plaats van de opdrachtregel te gebruiken, zie Walkthrough: werken met projecten en oplossingen (C++) of de Visual Studio IDE gebruiken voor C++ Desktopontwikkeling.,

vereisten

om deze walkthrough te voltooien, moet u ofwel Visual Studio en de optionele Visual C++ componenten hebben geïnstalleerd, ofwel de Build Tools voor Visual Studio.

Visual Studio is een krachtige geà ntegreerde ontwikkelomgeving die een volledige editor, resource managers, debuggers en compilers voor vele talen en platforms ondersteunt. Zie Visual Studio installeren voor informatie over deze functies en hoe u Visual Studio kunt downloaden en installeren, inclusief de gratis Visual Studio Community-editie.,

De bouwtools voor Visual Studio-versie van Visual Studio installeert alleen de opdrachtregeltoolset, de compilers, gereedschappen en bibliotheken die u nodig hebt om C-en C++ – programma ‘ s te bouwen. Het is perfect voor het bouwen van labs of klaslokaal oefeningen en installeert relatief snel. Als u alleen de opdrachtregeltoolset wilt installeren, download Build Tools for Visual Studio vanaf de pagina Visual Studio downloads en voer het installatieprogramma uit. Selecteer in het installatieprogramma voor Visual Studio de werkbelasting van c++ build tools en kies Installeren.,

voordat u een C-of C++ – programma op de commandoregel kunt bouwen, moet u controleren of de gereedschappen zijn geïnstalleerd en of u ze vanaf de commandoregel kunt benaderen. Visual C++ heeft complexe vereisten voor de opdrachtregelomgeving om de tools, headers en bibliotheken te vinden die het gebruikt. U kunt Visual C++ niet gebruiken in een gewoon opdrachtpromptvenster zonder enige voorbereiding. U hebt een developer command prompt venster, dat is een gewone command prompt venster dat alle vereiste omgevingsvariabelen ingesteld heeft., Gelukkig, Visual C++ installeert snelkoppelingen voor u om Ontwikkelaar opdrachtprompt te starten die de omgeving hebben ingesteld voor command line builds. Helaas, de namen van de ontwikkelaar command prompt snelkoppelingen en waar ze zich bevinden zijn verschillend in bijna elke versie van Visual C++ en op verschillende versies van Windows. Uw eerste walkthrough taak is om de juiste snelkoppeling te gebruiken vinden.

Note

een sneltoets voor de opdrachtprompt voor ontwikkelaars stelt automatisch de juiste paden in voor de compiler en gereedschappen, en voor alle vereiste headers en bibliotheken., Sommige van deze waarden zijn verschillend voor elke build configuratie. U moet deze omgevingswaarden zelf instellen als u geen van de sneltoetsen gebruikt. Zie pad-en omgevingsvariabelen instellen voor Command-Line Builds voor meer informatie. Omdat de bouwomgeving complex is, raden we u ten zeerste aan een snelkoppeling voor de opdrachtprompt van ontwikkelaars te gebruiken in plaats van uw eigen te bouwen.

deze instructies variëren afhankelijk van de versie van Visual Studio die u gebruikt. Als u de documentatie voor de gewenste versie van Visual Studio wilt bekijken, gebruikt u het besturingselement Version selector., Het staat bovenaan de inhoudsopgave op deze pagina.

Open een opdrachtprompt voor ontwikkelaars in Visual Studio 2019

Als u Visual Studio 2019 hebt geïnstalleerd op Windows 10, opent u het menu Start, scroll vervolgens naar beneden en open de map Visual Studio 2019 (niet de app Visual Studio 2019). Kies Ontwikkelaar opdrachtprompt voor VS 2019 om het opdrachtpromptvenster te openen.

Als u een andere versie van Windows gebruikt, zoekt u in uw startmenu of startpagina naar een Visual Studio tools-map die een snelkoppeling voor de opdrachtprompt voor ontwikkelaars bevat., U kunt ook de Windows-zoekfunctie gebruiken om te zoeken naar “developer command prompt” en kies er een die overeenkomt met uw geïnstalleerde versie van Visual Studio. Gebruik de snelkoppeling om het opdrachtpromptvenster te openen.

Open een opdrachtprompt voor ontwikkelaars in Visual Studio 2017

Als u Visual Studio 2017 hebt geïnstalleerd op Windows 10, opent u het menu Start, scroll naar beneden en open de map Visual Studio 2017 (niet de app Visual Studio 2017). Kies Developer Command Prompt voor VS 2017 om het opdrachtpromptvenster te openen.,

Als u een andere versie van Windows gebruikt, zoekt u in uw startmenu of startpagina naar een Visual Studio tools-map die een snelkoppeling voor de opdrachtprompt voor ontwikkelaars bevat. U kunt ook de Windows-zoekfunctie gebruiken om te zoeken naar “developer command prompt” en kies er een die overeenkomt met uw geïnstalleerde versie van Visual Studio. Gebruik de snelkoppeling om het opdrachtpromptvenster te openen.,

Open een opdrachtprompt voor ontwikkelaars in Visual Studio 2015

Als u Microsoft Visual C++ Build Tools 2015 hebt geïnstalleerd op Windows 10, opent u het menu Start, scroll vervolgens naar beneden en open de map Visual C++ Build Tools. Kies Visual C++ 2015 x86 Native Tools opdrachtprompt om het opdrachtpromptvenster te openen.

Als u een andere versie van Windows gebruikt, zoekt u in uw startmenu of startpagina naar een Visual Studio tools-map die een snelkoppeling voor de opdrachtprompt voor ontwikkelaars bevat., U kunt ook de Windows-zoekfunctie gebruiken om te zoeken naar “developer command prompt” en kies er een die overeenkomt met uw geïnstalleerde versie van Visual Studio. Gebruik de snelkoppeling om het opdrachtpromptvenster te openen.

controleer vervolgens of de Visual C++ developer command prompt correct is ingesteld. Voer in het opdrachtpromptvenster cl in en controleer of de uitvoer er ongeveer zo uitziet:

Er kunnen verschillen zijn in de huidige directory of versienummers, afhankelijk van de versie van Visual C++ en eventuele Geïnstalleerde updates., Als de bovenstaande uitvoer vergelijkbaar is met wat je ziet, dan ben je klaar om C-of C++ – programma ‘ s te bouwen op de opdrachtregel.

opmerking

als u een fout krijgt zoals “‘cl’ wordt niet herkend als een interne of externe opdracht, operabel programma of batchbestand,” error C1034, of error LNK1104 wanneer u de opdracht cl uitvoert, dan gebruikt u ofwel geen developer command prompt, of er is iets mis met uw installatie van Visual C++. U moet dit probleem oplossen voordat u kunt doorgaan.,

als u de sneltoets voor de opdrachtprompt voor ontwikkelaars niet kunt vinden, of als u een foutmelding krijgt wanneer u cl invoert, dan kan uw visuele C++ installatie een probleem hebben. Als u Visual Studio 2017 of nieuwer gebruikt, probeert u de desktop development opnieuw te installeren met C++ workload in het Visual Studio-installatieprogramma. Zie Ondersteuning voor C++ installeren in Visual Studio voor meer informatie. Of installeer de Bouwhulpprogramma ‘ s opnieuw van de pagina Visual Studio downloads. Ga niet naar de volgende sectie totdat dit werkt., Zie Visual Studio installeren voor meer informatie over het installeren en oplossen van problemen met Visual Studio.

opmerking

afhankelijk van de versie van Windows op de computer en de systeembeveiligingsconfiguratie, moet u mogelijk met de rechtermuisknop klikken om het sneltoetsmenu voor de sneltoets voor de opdrachtprompt voor ontwikkelaars te openen en vervolgens als beheerder uitvoeren kiezen om het programma dat u maakt succesvol te bouwen en uit te voeren door deze wandeling te volgen.,

Maak een C-bronbestand aan en compileer het op de opdrachtregel

  1. in het opdrachtpromptvenster voor ontwikkelaars voert u cd c:\ in om de huidige werkmap naar de root van uw C: – station te wijzigen. Voer vervolgens md c:\simple in om een map aan te maken en voer vervolgens cd c:\simple in om naar die map te gaan. Deze map bevat het bronbestand en het gecompileerde programma.

  2. voer notepad simple.c In bij de opdrachtprompt voor ontwikkelaars. In de notitieblok waarschuwing dialoogvenster dat verschijnt, kies Ja om een nieuwe eenvoudige te maken.,c bestand in uw werkmap.

  3. voer in Kladblok de volgende regels code in:

    #include <stdio.h>int main(){ printf("Hello, World! This is a native C program compiled on the command line.\n"); return 0;}
  4. in de menubalk van Kladblok kiest u Bestand > Opslaan om eenvoudig op te slaan.c in je werk directory.

  5. schakel terug naar het developer command prompt venster. Geef dir op de opdrachtprompt om de inhoud van de c:\simple directory. Je zou het bronbestand eenvoudig moeten zien.,c in de directory listing, die er ongeveer uitziet als:

    C:\simple>dir Volume in drive C has no label. Volume Serial Number is CC62-6545 Directory of C:\simple10/02/2017 03:46 PM <DIR> .10/02/2017 03:46 PM <DIR> ..10/02/2017 03:36 PM 143 simple.c 1 File(s) 143 bytes 2 Dir(s) 514,900,566,016 bytes free

    de datums en andere details zullen verschillen op uw computer. Als u uw broncodebestand niet ziet, eenvoudig.c, zorg ervoor dat je bent veranderd in de c:\simple directory die u hebt gemaakt, en in Kladblok, zorg ervoor dat u uw bronbestand in deze directory hebt opgeslagen. Zorg er ook voor dat u de broncode hebt opgeslagen met een .C bestandsextensie, niet a .txt extensie.

  6. om uw programma te compileren, voert u cl simple.c In bij de opdrachtprompt voor ontwikkelaars.,

    u kunt de naam van het uitvoerbare programma zien, simple.exe, in de regels met uitvoerinformatie die de compiler toont:

    c:\simple>cl simple.cMicrosoft (R) C/C++ Optimizing Compiler Version 19.10.25017 for x86Copyright (C) Microsoft Corporation. All rights reserved.simple.cMicrosoft (R) Incremental Linker Version 14.10.25017.0Copyright (C) Microsoft Corporation. All rights reserved./out:simple.exesimple.obj

    opmerking

    Als u een fout krijgt zoals” ‘cl’ wordt niet herkend als een interne of externe opdracht, operabel programma of batchbestand, ” error C1034, of error LNK1104, is uw Ontwikkelaar opdrachtprompt niet correct ingesteld. Voor informatie over hoe u dit probleem kunt oplossen, gaat u terug naar de open een ontwikkelaar opdrachtprompt sectie.,

    Note

    Als u een andere compiler of linkerfout of waarschuwing krijgt, controleer dan uw broncode om eventuele fouten te corrigeren, sla deze op en voer de compiler opnieuw uit. Voor informatie over specifieke fouten, gebruik het zoekvak aan de bovenkant van deze pagina om te zoeken naar het foutnummer.

  7. om uw programma uit te voeren, typ simple achter de opdrachtprompt.

    het programma toont deze tekst en eindigt dan:

    Hello, World! This is a native C program compiled on the command line.

    Gefeliciteerd, u hebt een C-programma gecompileerd en uitgevoerd met behulp van de opdrachtregel.,

dit “Hallo, wereld” voorbeeld is ongeveer zo simpel als een C programma kan krijgen. Echte wereld programma ‘ s hebben header bestanden en meer bronbestanden, link in bibliotheken, en doen nuttig werk.

u kunt de stappen in deze walkthrough gebruiken om uw eigen C-code te maken in plaats van de getoonde voorbeeldcode te typen. U kunt ook vele C-code voorbeeldprogramma ‘ s die u elders vindt bouwen. Om een programma met extra broncodebestanden te compileren, voer je ze allemaal in op de commandoregel, zoals:

cl file1.c file2.c file3.c

de compiler voert een programma uit met de naam file1.executable., De naam wijzigen in program1.exe, voeg een /out linker optie toe:

cl file1.c file2.c file3.c /link /out:program1.exe

en om automatisch meer programmeerfouten te vangen, raden we aan om te compileren met behulp van de /W3 of /W4 waarschuwingsniveau optie:

cl /W4 file1.c file2.c file3.c /link /out:program1.exe

de compiler, cl.exe, heeft veel meer opties die u kunt toepassen op te bouwen, optimaliseren, debuggen, en analyseren van uw code. Voer voor een snelle lijst cl /? In bij de opdrachtprompt voor ontwikkelaars. U kunt ook afzonderlijk compileren en koppelen en linker-opties toepassen in complexere build-scenario ‘ s., Zie C/C++ Building Reference voor meer informatie over compiler-en linkeropties en gebruik.

U kunt NMAKE en makefiles, of MSBuild en projectbestanden gebruiken om complexere projecten op de opdrachtregel te configureren en te bouwen. Zie NMAKE Reference en MSBuild voor meer informatie over het gebruik van deze tools.

de talen C en c++ zijn vergelijkbaar, maar niet hetzelfde. De Microsoft C / C++ compiler (MSVC) gebruikt een eenvoudige regel om te bepalen welke taal te gebruiken wanneer het uw code compileert. Standaard behandelt de MSVC compiler alle bestanden die eindigen in .c als C broncode, en alle bestanden die eindigen in .,cpp als C++ broncode. Om de compiler te dwingen om alle bestanden te behandelen als C niet-afhankelijk van bestandsnaamextensie, gebruik je de / TC compiler optie.

MSVC is compatibel met de ISO C99-standaard, maar niet strikt compatibel. In de meeste gevallen zal portable C code compileren en uitvoeren zoals verwacht. Visual C++ biedt ondersteuning voor de wijzigingen in ISO C11/C17. Om met C11/C17 ondersteuning te compileren, gebruik je de compilervlag /std:c11 of /std:c17. Bepaalde bibliotheekfuncties en POSIX-functienamen worden door MSVC verouderd. De functies worden ondersteund, maar de voorkeursnamen zijn veranderd., Zie beveiligingsfuncties in de waarschuwing voor CRT en Compiler (niveau 3) C4996 voor meer informatie.

zie ook

Leave a Comment