June 7, 2025

Настраиваем VS Code для работы с языком C

Писать в консоль было прикольно в первый день, но по мере того, как проектов становится всё больше, как и необходимых команд - становится проще использовать IDE. В этой статье мы разберёмся, что нужно настроить для комфортной работы с C-проектом.

1. Расширения.

Прямо при первом открытии .c- файла редактор предлагает установить пакет расширений для работы с C/C++. Кроме него, ещё полезны GitLens - улучшенные утилиты для работы с Git.

Подсветка синтаксиса, автодополнение, сборка проекта, граф коммитов и многое другое!

2. Настройка форматтера и редактора.

Можно настроить это глобально в VS Code, а можно завести файл настроек, который будет затем копироваться из проекта в проект. Выглядит это примерно так:

Файл settings.json содержит локальные настройки.

Содержимое файла:

{

"C_Cpp.clang_format_style": "file:${workspaceFolder}/src/.clang-format",

"editor.tabSize": 4,

"editor.detectIndentation": true,

"editor.rulers": [110],

"files.insertFinalNewline": true,

"files.trimTrailingWhitespace": true,

"files.associations": {

"random": "c",

"cstdlib": "c"

}

}

Обратите внимание на первую строку - форматтер пытается получить правила конкретно для C-кода из файла .clang-format, лежащего в src проекта!

3. Настройка компиляции.

Форматирование кода теперь автоматическое при сохранении файла - пришло время ускорить сборку! Для этого мы будем использовать файл tasks.json в .vscode:

.vscode - папка для мета-файлов, используемых редактором

И сам конфиг:

{

"tasks": [

{

"type": "shell",

"label": "C/C++: gcc build",

"command": "gcc",

"args": [

"-Wall",

"-Werror",

"-Wextra",

"${file}",

"-o",

"${fileDirname}/../build/${fileBasenameNoExtension}"

],

"options": {

"cwd": "${fileDirname}"

},

"problemMatcher": [

"$gcc"

],

"group": "build"

}

],

"version": "2.0.0"

}

Обратите внимание: здесь готовые файлы выводятся в папку ./build, которую нужно предварительно создать. Это нужно, чтобы они не засоряли папку с исходниками... и ещё для кое-какой фичи.

Чтобы скомпилировать код, теперь достаточно всего лишь нажать Ctrl+Shift+B (Command+Shift+B на MacOS) и запустить задачу "C/C++: gcc build". Она автоматически выполнится со всеми необходимыми параметрами, добавленными заранее!

Можно настроить ещё и дебаг-проверку, но об этом я сделаю отдельный пост позже, тема это большая.

4. .gitignore

Последнее, что ещё можно сделать - это настроить git таким образом, чтобы он не отслеживал некоторые файлы - настройки VS Code, скомпилированные программы и т.д. Это делается через файл .gitignore в корне проекта:

Единственная проблема - сам .gitignore проигнорировать нельзя.

В этом файле могут уже присутствовать какие-нибудь строки, а могут и не присутствовать (или даже может не быть самого файла). В любом случае, мы должны записать в него несколько строк...

# Editor and build files

.vscode/

src/.clang-format

build/

...которые добавят все наши исполняемые файлы, настройки и .clang-format в исключения для git'а. Теперь можно смело делать commit -a!

Впрочем, в VS Code можно и работать с гитом через графический интерфейс, что намного более удобно:

Надеюсь, эта мини-статейка поможет вам начать работать с кодом с намного большим удобством :)