Программирование на C в Visual Studio

104

Могу ли я использовать Visual Studio для изучения программирования на C? В меню нового проекта я могу выбирать между Visual Basic, Visual C #, Visual C ++, Visual F # и другими, но я не вижу «C» или «Visual C».

Привет мир
источник
3
VS поддерживает только подмножество C89, если вам нужен настоящий компилятор C для Windows, вам понадобится mingw-64
Mgetz
5
Visual Studio 2013 имеет гораздо лучшую поддержку C, чем 2012.
Инишер
У меня есть книги и видеоуроки, но у всех есть свои рекомендации по инструментам, используемым для компиляции и написания кода. Я просто хочу то, с чем я знаком.
HelloWorld
3
@ JérômeRadix, хотя в том же абзаце он говорит: «IDE или« интегрированная среда разработки »сделает вас глупым» и «Они полезны, если вы пытаетесь что-то сделать», а затем он говорит, что они бессмысленны для C ( но похоже, что он не нашел хорошего). Я уверен, что если писать GUI / учиться писать GUI и, конечно же, использовать библиотеки, то при наличии хорошей IDE для C это было бы очень полезно, а не бессмысленно.
barlop
15
Сказать, что IDE сделает вас глупым, все равно что сказать, что отладчик или дизассемблер сделает вас глупым. Это инструмент. Знайте его место и знайте, что это не замена изучению основ. Не превращайте его в призраков, потому что некоторые люди используют его, чтобы не учиться.
PeterT

Ответы:

89

Краткий ответ: Да, вам нужно переименовать файлы .cpp в c, чтобы вы могли писать C: https://msdn.microsoft.com/en-us/library/bb384838.aspx?f=255&MSPPError=-2147217396

По ссылке выше:

По умолчанию компилятор Visual C ++ обрабатывает все файлы с расширением .c как исходный код C, а все файлы с расширением .cpp как исходный код C ++. Чтобы компилятор обрабатывал все файлы как C независимо от расширения имени файла, используйте параметр компилятора / Tc.

При этом я не рекомендую изучать язык C в Visual Studio, почему VS? В нем есть много функций, которые вы не собираетесь использовать при изучении C

72DFBF5B A0DF5BE9
источник
29
Часто «изучение C» (или C ++) - это простая часть - сложная часть - это научиться создавать полезные (часто с графическим интерфейсом) приложения, что требует знакомства со всеми видами библиотек и фреймворков, а IDE делает этот опыт намного более управляемым. .
Дай
10
Я уже знаком с Visual Studio и использую другие языки.
HelloWorld
13
На всякий случай проверьте, не установлен ли флаг компиляции / TP. Если этот флаг установлен, он будет строить программы .c как C ++.
чашка
58

Да, вы очень хорошо можете изучить C с помощью Visual Studio.

Visual Studio поставляется с собственным компилятором C, который на самом деле является компилятором C ++. Просто используйте .cрасширение файла, чтобы сохранить исходный код.

Вам не обязательно использовать IDE для компиляции C. Вы можете написать исходный код в Блокноте и скомпилировать его в командной строке с помощью командной строки разработчика, которая поставляется с Visual Studio.

Откройте командную строку разработчика, введите каталог, в котором вы работаете, используйте clкоманду для компиляции кода C.

Например, cl helloworld.cкомпилирует файл с именем helloworld.c.

Обратитесь к этому для получения дополнительной информации: Пошаговое руководство: Компиляция программы C в командной строке

Надеюсь это поможет

Переключатель
источник
7

Да, ты можешь:

Вы можете создать проект на языке C, используя шаблоны проектов C ++. В созданном проекте найдите файлы с расширением имени файла .cpp и измените его на .c. Затем на странице свойств проекта для проекта (не для решения) разверните Свойства конфигурации, C / C ++ и выберите Дополнительно. Измените параметр "Компилировать как" на "Компилировать как код C" (/ TC).

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

Терри Чен
источник
7

Да, это так, ни в одной из редакций Visual Stdio не упоминается C, но он включен в компилятор C ++ (поэтому вам нужно искать в C ++). Основное различие между использованием C и C ++ - это система именования (т.е. использование .c, а не .cpp ).

Вы должны быть осторожны, чтобы не создать проект C ++ и не переименовать его в C, хотя это не сработает .

Кодирование C из командной строки:

Как и gccв Linux (или если у вас установлен MinGW), в Visual Studio есть команда, которую нужно использовать из командной строки (хотя это должна быть командная строка разработчика Visual Studio). Как упоминалось в другом ответе, вы можете использовать его clдля компиляции файла c (убедитесь, что он назван .c )

Пример:

cl myfile.c

Или проверить все принятые команды:

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>

Кодирование C из IDE:

Без сомнения, одна из лучших особенностей Visual Studio - это удобная IDE.

Хотя это требует большей настройки, вы получаете такие бонусы, как базовая отладка перед компиляцией (например, если вы забыли ;)

Чтобы создать проект C, сделайте следующее:

Начните новый проект, перейдите в раздел C ++ и выберите Empty Project, введите Nameсвой проект и тот, в который Locationвы хотите его установить, затем щелкните Ok. Теперь дождитесь создания проекта.

введите описание изображения здесь

Затем Solutions Explorerщелкните правой кнопкой мыши Source Filesи выберите Addзатем New Item. Вы должны увидеть что-то вроде этого:

введите описание изображения здесь

Переименуйте, Source.cppчтобы включить .cрасширение ( Source.cнапример). Выберите место, в котором вы хотите его сохранить, я бы рекомендовал всегда хранить его в самой папке проекта (в этом случае C:\Users\Simon\Desktop\Learn\My First C Code)

Он должен открыть .cфайл, готовый к изменению. Visual Studio теперь можно использовать как обычно, удачного кодирования!

Саймон
источник
0

Вы можете использовать Visual Studio для C, но если вы серьезно относитесь к изучению новейшего доступного C, я рекомендую использовать что-то вроде Code :: Blocks с версией MinGW-TDM, которую вы можете получить 32-разрядной версией. Я использую версию 5.1, которая поддерживает новейшие C и C ++. Еще одно преимущество заключается в том, что это лучшая платформа для создания программного обеспечения, которое можно легко перенести на другие платформы. Если бы вы, например, кодировали на C, используя библиотеку SDL, вы могли бы создать программное обеспечение, которое можно было бы перекомпилировать с небольшими изменениями кода или вообще без них на Linux, Apple и многих мобильных устройствах. Я думаю, что путь Microsoft, который идет в наши дни, определенно лучший.

Нил Рой
источник
1
Ваша помощь очень ценится. Извините за слишком резкое сообщение. Согласен, ваш ответ может быть кому-то полезен. Теперь я просто пытаюсь дать вам обратную связь, чтобы вы могли писать более качественные сообщения. Я хочу сказать, что это не дает ответа на вопрос OP о том, как писать на C с помощью MS VS.
HolyBlackCat
0

Загрузите Visual Studio C ++ Express версии 2006,2010 и т. Д., Затем перейдите к созданию нового проекта и создайте проект C ++ выберите проект cmd проверьте пустой переименовать cc с именем файла расширения c

cscit
источник