Przewodnik: kompilowanie programu w języku C w wierszu polecenia

Narzędzia kompilacji programu Visual Studio obejmują kompilator języka C, którego można użyć do tworzenia wszystkich elementów— od podstawowych programów konsolowych po pełne aplikacje klasyczne systemu Windows, aplikacje mobilne i inne. Microsoft C/C++ (MSVC) to kompilator języka C i C++, który w najnowszych wersjach jest zgodny z niektórymi najnowszymi standardami języka C, w tym C11 i C17.

W tym przewodniku pokazano, jak utworzyć podstawowy program "Hello, World" w stylu C przy użyciu edytora tekstów, a następnie skompilować go w wierszu polecenia. Jeśli wolisz pracować w języku C++ w wierszu polecenia, zobacz Przewodnik: kompilowanie natywnego programu C++ w wierszu polecenia. Jeśli chcesz wypróbować środowisko IDE programu Visual Studio zamiast używać wiersza polecenia, zobacz Przewodnik: praca z projektami i rozwiązaniami (C++) lub Używanie środowiska IDE programu Visual Studio dla tworzenia aplikacji klasycznych w języku C++.

Wymagania wstępne

Aby ukończyć ten przewodnik, musisz mieć zainstalowany program Visual Studio lub narzędzia Build Tools for Visual Studio oraz opcjonalne programowanie aplikacji klasycznych z obciążeniem języka C++.

Visual Studio to zaawansowane zintegrowane środowisko programistyczne, które obsługuje w pełni funkcjonalny edytor, menedżerów zasobów, debugerów i kompilatorów dla wielu języków i platform. Aby uzyskać informacje na temat tych funkcji oraz sposobu pobierania i instalowania programu Visual Studio, w tym bezpłatnej wersji Visual Studio Community, zobacz Instalowanie programu Visual Studio.

Program Build Tools for Visual Studio instaluje tylko zestaw narzędzi wiersza polecenia, kompilatory, narzędzia i biblioteki potrzebne do kompilowania programów C i C++. Jest idealny do tworzenia laboratoriów lub ćwiczeń na zajęciach i instaluje się stosunkowo szybko. Aby zainstalować tylko zestaw narzędzi wiersza polecenia, pobierz narzędzia Build Tools for Visual Studio ze strony pobierania programu Visual Studio i uruchom instalatora. W instalatorze programu Visual Studio wybierz pakiet roboczy Programowanie aplikacji klasycznych z językiem C++ (w starszych wersjach programu Visual Studio wybierz obciążenie narzędzi kompilacji języka C++), a następnie wybierz pozycję Zainstaluj.

Po zainstalowaniu narzędzi jest używane inne narzędzie do kompilowania programu C lub C++ w wierszu polecenia. Środowisko MSVC ma złożone wymagania dotyczące środowiska wiersza polecenia w celu znalezienia używanych narzędzi, nagłówków i bibliotek. Nie można użyć narzędzia MSVC w prostym oknie wiersza polecenia bez przygotowania. Potrzebujesz okna wiersza polecenia dla deweloperów, które jest zwykłym oknem wiersza polecenia zawierającym wszystkie wymagane zmienne środowiskowe. Na szczęście program Visual Studio instaluje skróty, aby uruchamiać wiersze polecenia dla deweloperów, które mają skonfigurowane środowisko na potrzeby kompilacji wiersza polecenia. Niestety nazwy skrótów wiersza polecenia dla deweloperów i ich lokalizacji są różne w prawie każdej wersji programu Visual Studio i w różnych wersjach systemu Windows. Pierwszym zadaniem przewodnika jest znalezienie odpowiedniego skrótu do użycia.

Uwaga

Skrót wiersza polecenia dla deweloperów automatycznie ustawia poprawne ścieżki kompilatora i narzędzi oraz dla wszystkich wymaganych nagłówków i bibliotek. Niektóre z tych wartości są różne dla każdej konfiguracji kompilacji. Te wartości środowiska należy ustawić samodzielnie, jeśli nie używasz jednego ze skrótów. Aby uzyskać więcej informacji, zobacz Use the MSVC toolset from the command line (Używanie zestawu narzędzi MSVC z wiersza polecenia). Ponieważ środowisko kompilacji jest złożone, zdecydowanie zalecamy użycie skrótu wiersza polecenia dla deweloperów zamiast tworzenia własnego.

Te instrukcje różnią się w zależności od używanej wersji programu Visual Studio. Aby zapoznać się z dokumentacją preferowanej wersji programu Visual Studio, użyj kontrolki selektora wersji . Znajduje się on w górnej części spisu treści na tej stronie.

Otwieranie wiersza polecenia dla deweloperów w programie Visual Studio 2022

Jeśli program Visual Studio 2022 został zainstalowany w systemie Windows 10 lub nowszym, otwórz menu Start i wybierz pozycję Wszystkie aplikacje. Następnie przewiń w dół i otwórz folder Visual Studio 2022 (a nie aplikację Visual Studio 2022). Wybierz pozycję Wiersz polecenia dla dewelopera dla programu VS 2022 , aby otworzyć okno wiersza polecenia.

Otwieranie wiersza polecenia dla deweloperów w programie Visual Studio 2019

Jeśli program Visual Studio 2019 został zainstalowany w systemie Windows 10 lub nowszym, otwórz menu Start i wybierz pozycję Wszystkie aplikacje. Następnie przewiń w dół i otwórz folder programu Visual Studio 2019 (a nie aplikację programu Visual Studio 2019). Wybierz pozycję Wiersz polecenia dla dewelopera dla programu VS 2019 , aby otworzyć okno wiersza polecenia.

Otwieranie wiersza polecenia dla deweloperów w programie Visual Studio 2017

Jeśli program Visual Studio 2017 został zainstalowany w systemie Windows 10 lub nowszym, otwórz menu Start i wybierz pozycję Wszystkie aplikacje. Następnie przewiń w dół i otwórz folder programu Visual Studio 2017 (a nie aplikację programu Visual Studio 2017). Wybierz pozycję Wiersz polecenia dla dewelopera dla programu VS 2017 , aby otworzyć okno wiersza polecenia.

Otwieranie wiersza polecenia dla deweloperów w programie Visual Studio 2015

Jeśli zainstalowano narzędzia Microsoft Visual C++ Build Tools 2015 w systemie Windows 10 lub nowszym, otwórz menu Start i wybierz pozycję Wszystkie aplikacje. Następnie przewiń w dół i otwórz folder Visual C++ Build Tools . Wybierz wiersz polecenia Visual C++ 2015 x86 Native Tools, aby otworzyć okno wiersza polecenia.

Jeśli używasz innej wersji systemu Windows, poszukaj strony menu Start lub startowej folderu narzędzi programu Visual Studio zawierającego skrót wiersza polecenia dla deweloperów. Możesz również użyć funkcji wyszukiwania systemu Windows, aby wyszukać "wiersz polecenia dla deweloperów" i wybrać tę, która jest zgodna z zainstalowaną wersją programu Visual Studio. Użyj skrótu, aby otworzyć okno wiersza polecenia.

Następnie sprawdź, czy wiersz polecenia dewelopera jest poprawnie skonfigurowany. W oknie wiersza polecenia wprowadź cl (lub CL, wielkość liter nie ma znaczenia dla nazwy kompilatora, ale ma znaczenie dla opcji kompilatora). Dane wyjściowe powinny wyglądać następująco:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise>cl
Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 for x86
Copyright (C) Microsoft Corporation.  All rights reserved.

usage: cl [ option... ] filename... [ /link linkoption... ]

W zależności od wersji programu Visual Studio i zainstalowanych aktualizacji mogą występować różnice w bieżącym katalogu lub numerach wersji. Jeśli powyższe dane wyjściowe są podobne do widocznych, możesz przystąpić do kompilowania programów C lub C++ w wierszu polecenia.

Uwaga

Jeśli wystąpi błąd, taki jak "cl" nie jest rozpoznawany jako wewnętrzne lub zewnętrzne polecenie, program do obsługi lub plik wsadowy", błąd C1034 lub błąd LNK1104 podczas uruchamiania polecenia cl , albo nie używasz wiersza polecenia dla deweloperów, lub coś jest nie tak z instalacją programu Visual Studio. Przed kontynuowaniem należy rozwiązać ten problem.

Jeśli nie możesz znaleźć skrótu wiersza polecenia dla deweloperów lub jeśli podczas wprowadzania clkomunikatu o błędzie zostanie wyświetlony komunikat o błędzie, instalacja programu Visual Studio może mieć problem. Jeśli używasz programu Visual Studio 2017 lub nowszego, spróbuj ponownie zainstalować pakiet roboczy Programowanie aplikacji klasycznych przy użyciu języka C++ w instalatorze programu Visual Studio. Aby uzyskać szczegółowe informacje, zobacz Instalowanie obsługi języka C++ w programie Visual Studio. Możesz też ponownie zainstalować narzędzia Build Tools ze strony pobierania programu Visual Studio. Nie należy przechodzić do następnej sekcji, dopóki cl polecenie nie będzie działać. Aby uzyskać więcej informacji na temat instalowania i rozwiązywania problemów z programem Visual Studio, zobacz Instalowanie programu Visual Studio.

Uwaga

W zależności od wersji systemu Windows na komputerze i konfiguracji zabezpieczeń systemu może być konieczne kliknięcie prawym przyciskiem myszy, aby otworzyć menu skrótów dla wiersza polecenia dewelopera, a następnie wybrać polecenie Uruchom jako Administracja istrator, aby pomyślnie skompilować i uruchomić program utworzony, postępując zgodnie z tym przewodnikiem.

Tworzenie pliku źródłowego języka C i kompilowanie go w wierszu polecenia

  1. W oknie wiersza polecenia dewelopera wprowadź , cd c:\ aby zmienić bieżący katalog roboczy na katalog główny dysku C:. Następnie wprowadź polecenie md c:\hello , aby utworzyć katalog, a następnie wprowadź polecenie cd c:\hello , aby zmienić go na ten katalog. Ten katalog będzie przechowywać plik źródłowy i skompilowany program.

  2. Wprowadź polecenie notepad hello.c w wierszu polecenia dewelopera. W wyświetlonym oknie dialogowym alertu Notatnik wybierz pozycję Tak, aby utworzyć nowy hello.c plik w katalogu roboczym.

  3. W Notatnik wprowadź następujące wiersze kodu:

    #include <stdio.h>
    
    int main()
    {
        printf("Hello, World! This is a native C program compiled on the command line.\n");
        return 0;
    }
    
  4. Na pasku menu Notatnik wybierz pozycję Plik>Zapisz, aby zapisać hello.c plik w katalogu roboczym.

  5. Wróć do okna wiersza polecenia dewelopera. Wprowadź dir polecenie w wierszu polecenia, aby wyświetlić listę zawartości c:\hello katalogu. Powinien zostać wyświetlony plik hello.c źródłowy na liście katalogów, który wygląda następująco:

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

    Daty i inne szczegóły będą się różnić na komputerze. Jeśli nie widzisz pliku kodu źródłowegoc:\hello, upewnij się, hello.cże został zmieniony na utworzony katalog i w Notatnik upewnij się, że plik źródłowy został zapisany w tym katalogu. Upewnij się również, że kod źródłowy został zapisany przy użyciu .c rozszerzenia nazwy pliku, a nie .txt rozszerzenia.

  6. Aby skompilować program, wprowadź w cl hello.c wierszu polecenia dewelopera.

    Nazwę programu wykonywalnego hello.exe można wyświetlić w wierszach informacji wyjściowych wyświetlanych przez kompilator:

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

    Uwaga

    Jeśli wystąpi błąd, taki jak "cl", nie jest rozpoznawany jako wewnętrzne lub zewnętrzne polecenie, program operacyjny lub plik wsadowy", błąd C1034 lub błąd LNK1104, wiersz polecenia dewelopera nie jest poprawnie skonfigurowany. Aby uzyskać informacje na temat rozwiązywania tego problemu, wróć do sekcji Otwórz wiersz polecenia dla deweloperów.

    Jeśli wystąpi inny błąd kompilatora lub konsolidatora lub ostrzeżenie, przejrzyj kod źródłowy, aby poprawić wszelkie błędy, zapisz go i uruchom ponownie kompilator. Aby uzyskać informacje o określonych błędach, użyj pola wyszukiwania w górnej części tej strony, aby wyszukać numer błędu.

  7. Aby uruchomić program, wprowadź hello polecenie w wierszu polecenia.

    Program wyświetla ten tekst, a następnie kończy działanie:

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

    Gratulacje, skompilujesz i uruchomisz program C przy użyciu wiersza polecenia.

Następne kroki

Ten przykład "Hello, World" jest tak podstawowy, jak można uzyskać program języka C. Programy w świecie rzeczywistym mają pliki nagłówkowe i więcej plików źródłowych, link w bibliotekach i wykonują przydatną pracę.

Możesz użyć kroków opisanych w tym przewodniku, aby utworzyć własny kod języka C zamiast wpisywać pokazany przykładowy kod. Możesz również utworzyć wiele przykładowych programów kodu C, które można znaleźć gdzie indziej. Aby skompilować program zawierający więcej plików kodu źródłowego, wprowadź je wszystkie w wierszu polecenia:

cl file1.c file2.c file3.c

Kompilator wyprowadza program o nazwie file1.exe. Aby zmienić nazwę na program1.exe, dodaj /out opcji konsolidatora :

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

Aby automatycznie przechwycić więcej błędów programowania, zalecamy skompilowanie przy użyciu opcji /W3 lub /W4 poziomu ostrzeżenia:

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

Kompilator cl.exe ma wiele innych opcji, które można zastosować do kompilowania, optymalizowania, debugowania i analizowania kodu. Aby uzyskać szybką listę, wprowadź ciąg cl /? w wierszu polecenia dewelopera. Można również kompilować i łączyć oddzielnie i stosować opcje konsolidatora w bardziej złożonych scenariuszach kompilacji. Aby uzyskać więcej informacji na temat opcji kompilatora i konsolidatora oraz użycia, zobacz C/C++ Building Reference (Dokumentacja kompilatora i konsolidatora C/C++).

Można użyć narzędzia NMAKE i plików makefile lub msBuild i plików projektu do konfigurowania i kompilowania bardziej złożonych projektów w wierszu polecenia. Aby uzyskać więcej informacji na temat korzystania z tych narzędzi, zobacz NMAKE Reference and MSBuild (Dokumentacja narzędzia NMAKE i program MSBuild).

Języki C i C++ są podobne, ale nie takie same. Kompilator języka Microsoft C/C++ (MSVC) używa podstawowej reguły do określenia języka, który ma być używany podczas kompilowania kodu. Domyślnie kompilator MSVC traktuje wszystkie pliki, które kończą się .c jako kod źródłowy języka C, i wszystkie pliki, które kończą się .cpp jako kod źródłowy C++. Aby wymusić, aby kompilator potraktował wszystkie pliki jako C bez względu na rozszerzenie nazwy pliku, użyj opcji kompilatora /TC .

Domyślnie MSVC jest zgodny ze standardami ANSI C89 i ISO C99, ale nie jest ściśle zgodny. W większości przypadków przenośny kod C zostanie skompilowany i uruchomiony zgodnie z oczekiwaniami. Kompilator zapewnia opcjonalną obsługę zmian w standardzie ISO C11/C17. Aby skompilować z obsługą języka C11/C17, użyj flagi /std:c11 kompilatora lub /std:c17. Obsługa C11/C17 wymaga zestawu Windows SDK 10.0.20201.0 lub nowszego. Zalecany jest zestaw Windows SDK 10.0.22000.0 lub nowszy. Najnowszy zestaw SDK można pobrać ze strony zestawu Windows SDK . Aby uzyskać więcej informacji i instrukcje dotyczące instalowania i używania tego zestawu SDK do programowania w języku C, zobacz Instalowanie obsługi C11 i C17 w programie Visual Studio.

Niektóre funkcje biblioteki i nazwy funkcji POSIX są przestarzałe przez MSVC. Funkcje są obsługiwane, ale preferowane nazwy uległy zmianie. Aby uzyskać więcej informacji, zobacz Funkcje zabezpieczeń w CRT i Ostrzeżenie kompilatora (poziom 3) C4996.

Zobacz też

Przewodnik: tworzenie standardowego programu C++ (C++)
Dokumentacja języka C
Projekty i systemy kompilacji
Zgodność