Пошаговое руководство. Компиляция программы на языке C из командной строки
Средства сборки Visual Studio включают компилятор C, который можно использовать для создания всех базовых консольных программ до полных классических приложений Windows, мобильных приложений и т. д. Microsoft C/C++ (MSVC) — это компилятор C и C++, который в последних версиях соответствует некоторым из последних языковых стандартов C, включая C11 и C17.
В этом пошаговом руководстве показано, как создать простейшую программу на языке C в стиле «Hello, World» в текстовом редакторе с последующей компиляцией из командной строки. Если вы хотите работать в C++ в командной строке, см . пошаговое руководство. Компиляция собственной программы C++ в командной строке. Если вы хотите попробовать интегрированную среду разработки Visual Studio вместо использования командной строки, см . пошаговое руководство. Работа с проектами и решениями (C++) или использование интегрированной среды разработки Visual Studio для классических приложений C++.
Необходимые компоненты
Для выполнения этого пошагового руководства необходимо установить Visual Studio или средства сборки для Visual Studio и дополнительную разработку классических приложений с помощью рабочей нагрузки C++.
Visual Studio — это эффективная интегрированная среда разработки, которая поддерживает полнофункциональный редактор, диспетчеры ресурсов, отладчики и компиляторы для многих языков и платформ. Сведения об этих компонентах, а также о скачивании и установке Visual Studio, включая бесплатный выпуск Visual Studio Community, см. в этой статье.
При использовании версии Build Tools для Visual Studio устанавливаются только программы командной строки, библиотеки и компиляторы, необходимые для сборки программ на C и C++. Это идеальный вариант для создания заданий и упражнений, а установка выполняется относительно быстро. Чтобы установить только набор программ командной строки, скачайте Build Tools для Visual Studio на странице скачивания Visual Studio, а затем запустите установщик. В установщике Visual Studio выберите рабочую нагрузку C++ (в более ранних версиях Visual Studio выберите рабочую нагрузку средств сборки C++ и нажмите кнопку «Установить«.
При установке средств в командной строке используется другое средство, используемое для создания программы C или C++. MSVC имеет сложные требования к среде командной строки для поиска инструментов, заголовков и библиотек, которые он использует. Невозможно использовать MSVC в обычном окне командной строки без некоторой подготовки. Вам понадобится окно командной строки разработчика, являющееся обычным окном командной строки, в котором заданы все необходимые переменные среды. К счастью, Visual Studio устанавливает сочетания клавиш для запуска командных строк разработчика, имеющих среду, настроенную для сборок командной строки. К сожалению, имена сочетаний клавиш командной строки разработчика и их расположение отличаются практически в каждой версии Visual Studio и в разных версиях Windows. Первая задача пошагового руководства — найти нужный ярлык.
Ярлык командной строки разработчика автоматически задает правильные пути для компилятора и средств, а также для всех необходимых заголовков и библиотек. Некоторые из этих значений различаются для каждой конфигурации сборки. Если вы не используете ни один из ярлыков, эти значения среды необходимо задать самостоятельно. Дополнительные сведения см. в статье Использование набора инструментов MSVC из командной строки. Так как настраивать среду разработки сложно, настоятельно рекомендуется использовать ярлык командной строки разработчика вместо создания собственного.
Эти инструкции зависят от используемой версии Visual Studio. Чтобы ознакомиться с документацией по предпочтительной версии Visual Studio, используйте селектор Версия. Он находится в верхней части оглавления на этой странице.
Открытие командной строки разработчика в Visual Studio 2022
Если вы установили Visual Studio 2022 в Windows 10 или более поздней версии, откройте меню «Пуск» и выберите Все приложения. Прокрутите вниз и откройте папку Visual Studio 2022 (не приложение Visual Studio 2022). Выберите элемент Командная строка разработчика для VS 2022, чтобы открыть окно командной строки.
Открытие командной строки разработчика в Visual Studio 2019
Если вы установили Visual Studio 2019 в Windows 10 или более поздней версии, откройте меню «Пуск» и выберите Все приложения. Прокрутите вниз и откройте папку Visual Studio 2019 (не приложение Visual Studio 2019). Выберите элемент Командная строка разработчика для VS 2019, чтобы открыть окно командной строки.
Открытие командной строки разработчика в Visual Studio 2017
Если вы установили Visual Studio 2017 в Windows 10 или более поздней версии, откройте меню «Пуск» и выберите Все приложения. Прокрутите вниз и откройте папку Visual Studio 2017 (не приложение Visual Studio 2017). Выберите элемент Командная строка разработчика для VS 2017, чтобы открыть окно командной строки.
Открытие командной строки разработчика в Visual Studio 2015
Если вы установили Microsoft Visual C++ Build Tools 2015 в Windows 10 или более поздней версии, откройте меню «Пуск» и выберите Все приложения. Прокрутите вниз и откройте папку Microsoft Visual C++ Build Tools. Выберите элемент Командная строка Native Tools x86 Visual C++ 2015, чтобы открыть окно командной строки.
Если вы используете другую версию Windows, найдите в меню «Пуск» или на начальной странице папку средств Visual Studio, содержащую ярлык командной строки разработчика. Можно также ввести «командная строка разработчика» в строке поиска в Windows и выбрать командную строку, которая соответствует установленной версии Visual Studio. Откройте окно командной строки с помощью ярлыка.
Затем убедитесь, что командная строка разработчика настроена правильно. В окне командной строки введите cl (или CL , регистр не имеет значения для имени компилятора, но имеет значение для параметров компилятора). Результат должен выглядеть следующим образом.
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. ]
В зависимости от версии Visual Studio и установленных обновлений могут быть различия в текущем каталоге или номерах версий. Если приведенный выше результат похож на отображаемый, можно приступать к сборке программ C или C++ в командной строке.
Если вы получаете ошибку, например «cl», не распознается как внутренняя или внешняя команда, операблная программа или пакетный файл», ошибка C1034 или ошибка LNK1104 при выполнении команды cl, то при установке Visual Studio вы не используете командную строку разработчика или что-то не так. Для продолжения нужно будет исправить ошибку.
Если вы не можете найти ярлык командной строки разработчика или сообщение об ошибке при вводе cl , может возникнуть проблема с установкой Visual Studio. При использовании Visual Studio 2017 или более поздней версии попробуйте переустановить рабочую нагрузку Разработка классических приложений на C++ с помощью установщика Visual Studio. Подробные сведения см. в статье Справка по установке средства С++ в Visual Studio. Можно также переустановить Build Tools со страницы Загрузки Visual Studio. Не переходите к следующему разделу, пока команда cl не сработает. Дополнительные сведения об установке Visual Studio и устранении неполадок см. в статье Установка Visual Studio.
В зависимости от версии Windows, установленной на компьютере, и конфигурации системы безопасности может потребоваться правой кнопкой мыши открыть контекстное меню для ярлыка командной строки разработчика и выбрать пункт Запуск от имени администратора, чтобы успешно выполнить сборку и запуск программы, созданной в этом пошаговом руководстве.
Создание файла исходного кода на языке C и его компиляция из командной строки
- В окне командной строки разработчика введите команду cd c:\ , чтобы изменить текущий рабочий каталог на корень диска C:. Затем введите md c:\hello , чтобы создать каталог, и введите cd c:\hello , чтобы перейти к этому каталогу. В этом каталоге будут находиться исходный файл и скомпилированная программа.
- В командной строке разработчика введите команду notepad hello.c . В появившемся диалоговом окне блокнота с оповещением выберите Да, чтобы создать файл hello.c в рабочей папке.
- В окне блокнота введите следующие строки кода:
#include int main()
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 . 10/02/2017 03:46 PM .. 10/02/2017 03:36 PM 143 hello.c 1 File(s) 143 bytes 2 Dir(s) 514,900,566,016 bytes free
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
Примечание. Если вы получаете сообщение об ошибке, например «cl не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл», ошибке C1034 или LNK1104, командная строка разработчика настроена неправильно. Чтобы получить сведения о том, как устранить эту проблему, вернитесь к разделу Открыть командную строку разработчика. Если вы получаете другое сообщение об ошибке или предупреждение компилятора или компоновщика, проверьте исходный код, исправьте ошибки, сохраните его и снова запустите компилятор. Для получения сведений о конкретных ошибках введите номер ошибки в поле поиска вверху этой страницы.
Hello, World! This is a native C program compiled on the command line.
Следующие шаги
Этот пример Hello, World является самой простой программой C. Реальные программы выполняют полезные действия и имеют файлы заголовков, дополнительные исходные файлы и ссылки на библиотеки.
Вы можете использовать шаги, описанные в этом пошаговом руководстве для C, для создания собственного кода, чтобы не вводить приведенный пример. Вы также можете выполнить сборку различных примеров кода на C, которые можно найти в других местах. Чтобы скомпилировать программу с большими файлами исходного кода, введите их все в командной строке:
cl file1.c file2.c file3.c
Компилятор выводит программу с именем file1.exe . Чтобы изменить имя program1.exe , добавьте параметр компоновщика /out :
cl file1.c file2.c file3.c /link /out:program1.exe
Чтобы автоматически перехватывать другие ошибки программирования, рекомендуется выполнить компиляцию с помощью порога предупреждений /W3 или /W4:
cl /W4 file1.c file2.c file3.c /link /out:program1.exe
Компилятор cl.exe имеет множество других параметров, которые можно применять для создания, оптимизации, отладки и анализа кода. Чтобы просмотреть краткий список, введите cl /? в командной строке разработчика. Можно также выполнять компиляцию и компоновку отдельно и применять параметры компоновщика в более сложных сценариях сборки. Дополнительные сведения о параметрах и использовании компилятора и компоновщика см. в справочнике по сборке для C/C++.
Для настройки и создания более сложных проектов в командной строке можно использовать NMAKE и файлы makefile либо MSBuild и файлы проекта. Дополнительные сведения об использовании этих средств см. в разделах Справочник по NMAKE и MSBuild.
Языки C и C++ похожи, но имеют различия. Компилятор Microsoft C/C++ (MSVC) использует простое правило для определения языка, используемого при компиляции кода. По умолчанию компилятор MSVC рассматривает все файлы с расширением .c как исходные коды на языке С, а файлы с расширением .cpp как исходные коды на языке С++. Если указан параметр компилятора /TC, компилятор будет рассматривать все файлы как исходные коды на языке С вне зависимости от расширения.
По умолчанию MSVC совместима со стандартами ANSI C89 и ISO C99, но не строго соответствует. В большинстве случаев переносимый код на языке C будет компилироваться и выполняться должным образом. Компилятор обеспечивает дополнительную поддержку изменений в ISO C11/C17. Чтобы выполнить компиляцию с поддержкой C11/C17, используйте флаг компилятора /std:c11 или /std:c17 . Для поддержки C11 и C17 требуется Windows SDK 10.0.20201.0 или более поздняя версия. Рекомендуется использовать Windows SDK 10.0.22000.0 или более позднюю версию. Последнюю версию пакета можно скачать на странице Windows SDK. Дополнительные сведения и инструкции по установке и использованию этого пакета SDK для разработки на языке C см. в статье Установка поддержки C11 и C17 в Visual Studio.
Некоторые функции библиотеки и имена функций POSIX являются нерекомендуемыми в компиляторе MSVC. Функции поддерживаются, но предпочтительные имена изменились. Дополнительные сведения см. в статьях Функции безопасности в CRT и Предупреждение компилятора (уровень 3) C4996.
Как создать сайт через блокнот
197110, Россия, Санкт-Петербург, а/я 144, ООО «Юми» +7 (812) 309-68-23
При взгляде на огромное разнообразие сайтов, представленных в сети, у людей непосвящённых зачастую создаётся впечатление, что создание сайтов бесплатно самостоятельно — дело избранных. Тем не менее, как и любая дальняя дорога начинается с первого шага, а шедевр с первого штриха в альбоме, так и создание нового сайта начинается с малого, можно даже сказать, подручными средствами. А для этого нам понадобится всем известный инструмент и простейший текстовый редактор — Блокнот.
Что такое HTML
Дело в том, что странички сайтов, которые мы видим на мониторах и экранах гаджетов, по сути, являются не чем иным, а текстовыми документами, правда, созданными с использованием языка гипертекстовой разметки или HTML, а делать это можно в обычном Блокноте. Следует отметить, что HTML не относится к языкам программирования — это способ предоставления информации в виде «доступном для понимания» браузерами. Браузеры, выступая в роли переводчиков со своего на человеческий язык, интерпретируют страницы в HTML, в результате чего вы видите на экране не набор символов, а форматированный текст.
Вот как выглядит на экране домашняя страница сайта umi.ru:

А вот как её «видит» браузер:

Существуют и непарные теги, когда действие разовое и не относится к определённому участку текста, например, перенос строк, обозначаемый в HTML комбинацией
.
Основные виды тегов и их роль в разметке веб-страницы
- . С этого элемента начинается сайт. Он сообщает браузеру, что документ создан с помощью языка гипертекстовой разметки HTML. По большому счёту, этот элемент не обязателен, но его присутствие позволит избежать потенциальных проблем с отображением страницы;
- парный тег и сообщает о начале и конце каждой страницы;
- внутри между элементами парного тега и указывается всевозможная служебная информация о странице, в том числе, ее заголовок, указания на стили, использованные в ее оформлении, подключаемые скрипты, специальные метаданные;
- ещё один парный тег содержит заголовок страницы и находится внутри тега . Благодаря этому тегу браузер и поисковые роботы определяют название каждой страницы;
- область документа, отображаемая непосредственно на мониторе и видная пользователю, ограничивается парным тегом . На странице эта область следует за тегом .
- для добавления в текст ссылок служит тег , однако он несколько отличается от предыдущих своим видом и выглядит текст ссылки.
- абзацы в тексте обозначаются парным тегом
.
- для разделения текста при помощи подзаголовков различных уровней существуют парные теги , , , , , . Благодаря им можно выделять текст в зависимости от его важности.
- для выделения текста полужирным шрифтом служит парный тег .
Это всего лишь небольшая часть из всего разнообразия тегов, которых насчитывается около ста. Тем не менее, с их помощью уже можно начинать cоздание сайта через блокнот. Есть также ряд правил, по которым теги располагаются в документе. Для основных тегов, включая , , , , существует строгий порядок распределения, тогда как в блоке, ограниченном тегами , остальные теги комбинируются в зависимости от общего замысла и в соответствии со стандартами языка HTML.
Создаём сайт своими руками в Блокноте
Давайте попробуем научиться cозданию сайта через блокнот, чтобы были понятны роль и функции тегов, а также структура создаваемого документа.
Для работы с текстом сайта лучше работать не с традиционной программой «Блокнот», а со специальной его версией Notepad++, созданной как раз для написания кода. Скачать её можно с сайта разработчика. Всё описанное можно сделать и в обычном «Блокноте», но в Notepad++ работать с кодом гораздо удобнее.
Как уже говорилось, документ начинается с тега , который сообщает браузеру, как его интерпретировать. Это и будет первая строчка в коде вашего сайта.

Следующий шаг. Обозначьте начало и конец страницы, добавив тег во вторую строку и через несколько строк ниже. Все остальное содержимое будет находиться в пределах, ограниченных этим парным тегом.

Затем выделим в документе участок страницы со служебной информацией, добавив парный тег между тегами , как показано ниже:

Чтобы указать заголовок страницы, в пространстве между тегами
и в одну строку напишите парный тег и вставьте между них заголовок (название сайта), например, «Создание сайта через блокнот».А вот как её «видит» браузер:

Это будет единственная служебная информация нашего сайта. Далее приступаем к оформлению той части, которая будет видна на экране дисплея, выделив её тегами . Открывающий тег ставим в строке после тега , а закрывающий — перед тегом