Programowanie w C w Visual Studio


102

Czy mogę używać programu Visual Studio do nauki programowania w języku C? W nowym menu projektu mogę wybierać pomiędzy Visual Basic, Visual C #, Visual C ++, Visual F # i innymi, ale nie widzę „C” ani „Visual C”.


3
VS obsługuje tylko podzbiór C89, jeśli potrzebujesz prawdziwego kompilatora C w systemie Windows, będziesz potrzebować mingw-64
Mgetz

5
Visual Studio 2013 ma znacznie lepsze wsparcie dla C niż 2012.
Inisheer,

Mam książki i samouczki wideo, ale wszystkie mają swoje własne zalecenia, jeśli chodzi o narzędzia używane do kompilacji i pisania kodu. Chcę tylko czegoś, co znam.
HelloWorld

3
@ JérômeRadix chociaż w dokładnie tym samym akapicie mówi, że „IDE lub„ zintegrowane środowisko programistyczne ”sprawi, że będziesz głupi.” I „Są przydatne, jeśli próbujesz coś zrobić”. Następnie mówi, że są bezcelowe dla C ( ale wydaje się, że dzieje się tak, ponieważ nie znalazł dobrego). Jestem pewien, że jeśli piszesz GUI / nauczysz się pisać GUI i oczywiście korzystasz z bibliotek, to jeśli istnieje dobre IDE dla C, byłoby to bardzo przydatne, a nie bezcelowe.
barlop

15
Powiedzenie, że IDE sprawi, że staniesz się głupi, jest dla mnie podobne do powiedzenia, że ​​debugger lub deasembler sprawi, że będziesz głupi. To narzędzie. Poznaj jego miejsce i wiedz, że nie zastąpi on nauki podstaw. Nie rób z tego straszydła, ponieważ niektórzy używają go, aby uniknąć konieczności uczenia się.
PeterT

Odpowiedzi:


87

Krótka odpowiedź: tak, musisz zmienić nazwy plików .cpp na c, aby można było napisać C: https://msdn.microsoft.com/en-us/library/bb384838.aspx?f=255&MSPPError=-2147217396

Z linku powyżej:

Domyślnie kompilator Visual C ++ traktuje wszystkie pliki kończące się na .c jako kod źródłowy C, a wszystkie pliki kończące się na .cpp jako kod źródłowy C ++. Aby wymusić na kompilatorze traktowanie wszystkich plików jako C niezależnie od rozszerzenia nazwy pliku, użyj opcji kompilatora / Tc.

Mimo to nie polecam nauki języka C w Visual Studio, dlaczego VS? Ma wiele funkcji, których nie będziesz używać podczas nauki języka C


29
Często „nauka C” (lub C ++) to łatwa część - najtrudniejsza część polega na nauce tworzenia przydatnych (często GUI) aplikacji, co wymaga zaznajomienia się z różnego rodzaju bibliotekami i frameworkami, a IDE sprawia, że ​​jest to dużo łatwiejsze w zarządzaniu .
Dai

10
Znam już Visual Studio i inne języki.
HelloWorld

13
Aby się upewnić, sprawdź, czy flaga kompilacji / TP nie jest ustawiona. Jeśli flaga jest ustawiona, będzie budować programy .c jako C ++.
puchar

58

Tak, bardzo dobrze możesz nauczyć się języka C przy użyciu programu Visual Studio.

Program Visual Studio jest dostarczany z własnym kompilatorem C, który w rzeczywistości jest kompilatorem C ++. Po prostu użyj .crozszerzenia pliku, aby zapisać kod źródłowy.

Nie musisz używać IDE do kompilacji C. Możesz napisać źródło w Notatniku i skompilować je w wierszu poleceń za pomocą Developer Command Prompt, który jest dostarczany z Visual Studio.

Otwórz wiersz polecenia dewelopera, wprowadź katalog, w którym pracujesz, użyj clpolecenia, aby skompilować kod C.

Na przykład cl helloworld.ckompiluje plik o nazwie helloworld.c.

Więcej informacji można znaleźć w tym artykule: Przewodnik: Kompilowanie programu w języku C w wierszu poleceń

Mam nadzieję że to pomoże


7

Tak, możesz:

Projekt w języku C można utworzyć przy użyciu szablonów projektów w języku C ++. W wygenerowanym projekcie zlokalizuj pliki, które mają rozszerzenie nazwy pliku .cpp i zmień je na .c. Następnie na stronie Właściwości projektu dla projektu (nie dla rozwiązania) rozwiń Właściwości konfiguracji, C / C ++ i wybierz opcję Zaawansowane. Zmień ustawienie Kompiluj jako na Kompiluj jako kod C (/ TC).

https://docs.microsoft.com/en-us/cpp/ide/visual-cpp-project-types?view=vs-2017


7

Tak, żadna z wersji Visual Stdio nie wspomina o C, ale jest ona dołączona do kompilatora C ++ (dlatego należy szukać w C ++). Główną różnicą między używaniem C i C ++ jest system nazewnictwa (tj. Używanie .c, a nie .cpp ).

Musisz jednak uważać, aby nie utworzyć projektu w C ++ i nie zmienić jego nazwy na C, to nie działa .

Kodowanie C z linii poleceń:

Podobnie jak gccw systemie Linux (lub jeśli masz zainstalowany MinGW), Visual Studio ma polecenie, które ma być używane z wiersza polecenia (musi to być jednak wiersz polecenia Visual Studio Developer). Jak wspomniano w innej odpowiedzi, której możesz użyć cldo skompilowania pliku c (upewnij się, że ma nazwę .c )

Przykład:

cl myfile.c

Lub sprawdzić wszystkie zaakceptowane polecenia:

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

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

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>

Kodowanie C z IDE:

Bez wątpienia jedną z najlepszych funkcji programu Visual Studio jest wygodne środowisko IDE.

Chociaż wymaga to więcej konfiguracji, otrzymujesz premie, takie jak podstawowe debugowanie przed kompilacją (na przykład, jeśli zapomnisz a ;)

Aby utworzyć projekt C, wykonaj następujące czynności:

Rozpocznij nowy projekt, przejdź do C ++ i wybierz Empty Project, wprowadź Nameswój projekt i miejsce, w Locationktórym chcesz go zainstalować, a następnie kliknij Ok. Teraz poczekaj na utworzenie projektu.

wprowadź opis obrazu tutaj

Następne pod Solutions Explorerprawym przyciskiem myszy Source Files, wybierz Addwtedy New Item. Powinieneś zobaczyć coś takiego:

wprowadź opis obrazu tutaj

Zmień nazwę, Source.cppaby dołączyć .crozszerzenie ( Source.cna przykład). Wybierz lokalizację, w której chcesz go zachować, radzę zawsze trzymać go w samym folderze projektu (w tym przypadku C:\Users\Simon\Desktop\Learn\My First C Code)

Powinien otworzyć .cplik, gotowy do modyfikacji. Visual Studio może być teraz używane jak normalne, szczęśliwe kodowanie!


0

Możesz użyć Visual Studio for C, ale jeśli poważnie myślisz o nauce najnowszego dostępnego C, polecam użycie czegoś takiego jak Code :: Blocks z wersją MinGW-TDM, którą możesz uzyskać w wersji 32-bitowej. Używam wersji 5.1, która obsługuje najnowsze C i C ++. Kolejną korzyścią jest to, że jest to lepsza platforma do tworzenia oprogramowania, które można łatwo przenieść na inne platformy. Na przykład, gdybyś tworzył kod w języku C, używając biblioteki SDL, mógłbyś stworzyć oprogramowanie, które można by ponownie skompilować z niewielkimi lub żadnymi zmianami w kodzie, na Linuksie, Apple i wielu urządzeniach mobilnych. Sposób, w jaki Microsoft podążał w tych dniach, wydaje mi się, że jest to zdecydowanie lepsza droga.


1
Twoja pomoc jest doceniana, poważnie. Przepraszam, że moja wiadomość jest prawdopodobnie zbyt ostra. Zgadzam się, że twoja odpowiedź może być komuś przydatna. Teraz staram się tylko przekazać Ci opinię, abyś mógł pisać lepsze posty. Chcę powiedzieć, że to nie daje odpowiedzi na pytanie OP dotyczące tego, jak pisać w C z MS VS.
HolyBlackCat

0

Pobierz program Visual Studio C ++ Express w wersji 2006,2010 itd., A następnie utwórz nowy projekt i utwórz projekt w C ++ wybierz projekt cmd zaznacz puste zmień nazwę cc z rozszerzeniem c nazwa pliku

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.