7 / 7 / 1
Регистрация: 09.07.2009
Сообщений: 555
1

Настройка Visual Studio Code

15.06.2023, 17:47. Показов 1925. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Windows 10. Использую gcc, установленный с помощью Msys2. Возникли следующие вопросы:
1. В программе использую строки и вывожу их через cout в терминал (в программе использую setlocale(LC_ALL, "Russian"). В терминале Code строки выводятся нормально, а если запустить программу вне Code - выводится юникод. Подскажите, пожалуйста, как поправить настройки, чтобы и вне оболочки программа выводила в Windows строки правильно.
2. Что нужно сделать в Code, чтобы скомпилировался релиз программы и переключаться между отладкой и релизом?
3. Как сохранить настройки Visual Studio Code?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.06.2023, 17:47
Ответы с готовыми решениями:

Настройка Visual Code Studio
Доброго времени суток. Я новичок и столкнулся с проблемой в программе Visual Code Studio на C++....

Настройка компилятора MinGW в visual studio code для определения boost
Здравствуйте, я только начал изучать С++ и пока что плохо разбираюсь в языке, но уже знаю основы....

Не работает кириллица в Visual Studio Code
Я начинаю изучение C++. Столкнулся с проблемой, в терминал не выводятся русские буквы. Пробовал...

Visual Studio Code и сторонние библиотеки
Здравствуйте! Ранее никогда не работал в среде Visual Studia Code и вот возникла необходимость...

Как компилировать в Visual Studio Code?
Извиняюсь за нубство, но уже битый час не могу разрешить следующую проблему : установила, значит, я...

4
3258 / 1479 / 468
Регистрация: 01.06.2021
Сообщений: 4,992
01.01.2024, 11:05 2
Лучший ответ Сообщение было отмечено tumanovalex как решение

Решение

tumanovalex,
1) как отображается вне редактора - никак не связано с VS Code. Нужно уже настроить ОС. Я на винде вообще включил этот юникод, теперь cmd отображает русские буквы даже без всяких локалей в коде.
2) создать в tasks.json два задания: одно для релизной сборки, второе для отладочной. У каждого задания будут свои опции для компилятора. В этом нет ничего сложного. Единственное нужно указать, какое из них будет дефолтным. Еще, в launch.json можешь указать на задание для отладочной сборки, чтобы при отладке прога автоматически собиралась в отладочной версии.
3) А что, не сохраняется?
1
7 / 7 / 1
Регистрация: 09.07.2009
Сообщений: 555
05.01.2024, 00:08  [ТС] 3
Спасибо за ответ.
По вопросу 2:
Хотелось бы посмотреть примеры файлов json для отладки и различных вариантов сборки (для работы с dll и статическая сборка) и подробные описания возможных элементов файлов json (какие в этих файлах могут быть объекты и массивы). Может быть у Вас есть ссылки на нужные ресурсы?
По вопросу 3:
Что-то я напутал с этим вопросом.
0
3258 / 1479 / 468
Регистрация: 01.06.2021
Сообщений: 4,992
05.01.2024, 01:26 4
Лучший ответ Сообщение было отмечено tumanovalex как решение

Решение

tumanovalex, в этой статье есть подробное описание, как настраивают tasks.json. Советую полностью прочесть эту статью.
Если говорить кратко, то внутри
JSON
1
2
3
"tasks": [
    // вот тут
]
можно прописать сколько угодно заданий. Каждое задание берется в фигурные скобки, а если их несколько, то отделяются запятыми. И вот эти задания должны быть внутри квадратных скобок.
В вышеуказанной статье объясняется, как настроить эти задания.
Я лишь обращу твоё внимание на то, что у каждого задания есть имя label. Ты можешь давать им любые имена. Например, для одного задания можешь написать Build Debug, а для второго задания Build Release. Как правило, задание для сборки релизной версии и задание для сборки отладочной версии будут отличаться аргументами args. Ведь, очевидно, что захочешь передать компилятору разные опции для той или иной версии сборки. Одно из этих заданий можешь сделать дефолтным.
Ещё есть полезные элементы dependsOrder и dependsOn. С помощью этих элементов можно настроить порядок выполнения заданий в сложных сценариях. Например, представим, что сперва нужно компилировать ресурсы с помощью компилятора ресурсов и только потом запустить компиляцию с помощью компилятора С++. В таком случае, можешь создать задание для компиляции ресурсов, а в заданиях для сборки релизной или отладочной версии указать в dependsOn имя задания, которое запускает компиляцию ресурсов. В результате при вызове задания сборки релизной версии, сперва будет выполняться компиляция ресурсов, а потом компиляция исходников.
Что касается отладки и файла launch.json, то там важно в preLaunchTask указать имя задания для сборки отладочной версии, которое ты дал в tasks.json.
С помощью json файлов ты можешь реализовать самые сложные сценарии сборки.

Дополнительно намекну, что VS Code этим не ограничивается. Если хочется прям выполнять очень сложные сборки на промышленном уровне, то существуют расширения для работы с CMake, Make и прочими системами сборки и генераторами. Так что, если кто-то рассказывает, что VS Code это обычный редактор, не верь ему. Этот редактор можно превратить в очень мощную ide.
1
7 / 7 / 1
Регистрация: 09.07.2009
Сообщений: 555
05.01.2024, 14:40  [ТС] 5
Спасибо за ответ. Попробую реализовать несколько сценариев. О результатах сообщу.
0
05.01.2024, 14:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.01.2024, 14:40
Помогаю со студенческими работами здесь

Не работает отладчик в Visual Studio Code
Добрый день. Пару дней вожусь с одной проблемой: при нажатии F5 / Ctrl+F5, VS Code сообщает мне,...

Visual Studio Code не видит ни одной библиотеки
я решил поменять операционную систему на linux, скачал visual studio code но при попытке...

Как посмотреть code элементов STL в Visual Studio ?
Мне нужно взглять на код контейнера сток (STL Conteiner stack ) на что надо нажать в Visual Studio...

Visual Studio Code не работает с контейнерами и новым компилятором
подскажите пожалуйста. я переустановил Mingw для изменения параметра threading model с win32 на...

программы написанные на Code blocks не открываются на visual studio
что делать?

Перенос программы из Code Block в Microsoft Visual Studio
можно ли программу из code block запустить на MVS. Просто перенеся код из code block в Microsoft...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru