Як встановити код Visual Studio для компіляції коду C ++?


222

Microsoft редактор Visual Studio Code є дуже приємним, але він не має підтримки за замовчуванням для створення C ++ проектів.

Як налаштувати це для цього?


12
Є багато відповідей на компіляцію коду C ++ під Linux, але що робити з Windows?
Чарльз Мілетте

5
Такі основні речі, і все ж немає корисного ресурсу для цього в Windows. І розширення ms cpptools, не кажіть про це. Я думаю, що це просто додати ваші розчарування. Це нічого не робить.
Кшитій

Хтось знайшов рішення? Я вмію компілювати, але не налагоджувати C / C ++ на VSCode. У цій статті йдеться про те, що налагодження підтримується лише на Linux. Також нещодавно я створив цю тему для того ж. Будемо вдячні за будь-яку допомогу ...
Mahesha999

Відповіді:


133

Існує набагато простіший спосіб компілювати та запускати код C ++, не потрібна конфігурація:

  1. Встановіть розширення Code Runner
  2. Відкрийте свій файл коду C ++ у текстовому редакторі, потім скористайтеся ярликом Ctrl+Alt+Nабо натисніть, F1а потім виберіть / введіть Run Code, або клацніть правою кнопкою миші Текстовий редактор, а потім клацніть Run Codeу контекстному меню. Вихідне вікно.

Крім того, ви можете оновити конфігурацію в settings.json, використовуючи різні компілятори C ++, як хочете, конфігурація за замовчуванням для C ++ наведена нижче:

"code-runner.executorMap": {
    "cpp": "g++ $fullFileName && ./a.out"
}

4
Моє вихідне вікно застрягло running blablabla. Ні підказок, нічого. Як я навіть зупиняю роботу коду?
Hichigaya Hachiman

11
Щоб зупинити виконання коду, використовуйте Ctrl+Alt+M. Щоб використовувати stdin для читання даних, ви можете перейти до File-> Preference-> Settingsдля встановлення "code-runner.runInTerminal": true. Більш детально ви можете звернутися до github.com/formulahendry/vscode-code-runner/isissue/91
Червень Хан,

1
Запуск у вікні виводу запобігає вводу терміналу. runInTerminal здається необхідним ...
Ендрю Вулф

Отримання помилки - "помилка: порожнє ім'я файлу в #include"
gaurav

9
Ви повинні розкрити, що ви є автором розширення, яке ви рекламуєте.
кодування

86

Завдання щодо складання конкретні для проекту. Щоб створити новий проект, відкрийте каталог у Visual Studio Code.

Дотримуючись тут інструкцій , натисніть Ctrl+ Shift+ P, наберіть Configure Tasks, виберіть його та натисніть Enter.

Файл task.json буде відкритий. Вставте у файл наступний скрипт збірки та збережіть його:

{
    "version": "0.1.0",
    "command": "make",
    "isShellCommand": true,
    "tasks": [
        {
            "taskName": "Makefile",

            // Make this the default build command.
            "isBuildCommand": true,

            // Show the output window only if unrecognized errors occur.
            "showOutput": "always",

            // Pass 'all' as the build target
            "args": ["all"],

            // Use the standard less compilation problem matcher.
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": ["relative", "${workspaceRoot}"],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        }
    ]
}

Тепер перейдіть до меню ФайлНалаштуванняКомбінації клавіш і додайте наступну прив'язку клавіш до завдання збирання:

// Place your key bindings in this file to overwrite the defaults
[
    { "key": "f8",          "command": "workbench.action.tasks.build" }
]

Тепер при натисканні F8Makefile буде виконано, а помилки будуть підкреслені в редакторі.


8
ПОПЕРЕДЖЕННЯ - формат цього файлу змінився, і це більше не є правильним. Дивіться: go.microsoft.com/fwlink/?LinkId=733558
точка

Клавіша ctrl+alt+bза замовчуванням призначена для завдання збірки.
небезпека89

Чи є команда чи прив'язка, яка перейде до наступної / попередньої помилки в терміналі ? У мене ситуація, коли на панелі "Проблеми" є маса невідповідних питань (оскільки VS Code насправді не знає, як створити мій проект - і він буде занадто задіяний, щоб його навчити), але мій "Термінал" повна корисних помилок після збірки. Мені просто потрібна комбінація клавіш, щоб перейти до наступної помилки в "Терміналі" ...
Dan L

47

Приклад завдання makefile для нової версії 2.0.0 task.json.

У фрагменті нижче деяких коментарів я сподіваюся, що вони стануть у нагоді.

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "<TASK_NAME>",
            "type": "shell",
            "command": "make",
            // use options.cwd property if the Makefile is not in the project root ${workspaceRoot} dir
            "options": {
                "cwd": "${workspaceRoot}/<DIR_WITH_MAKEFILE>"
            },
            // start the build without prompting for task selection, use "group": "build" otherwise
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": false,
                "panel": "shared"
            },
            // arg passing example: in this case is executed make QUIET=0
            "args": ["QUIET=0"],
            // Use the standard less compilation problem matcher.
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": ["absolute"],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        }
    ]
}

2
Все ще актуально у листопаді 2018 року. Дякую!
Внутрішня

У якому каталозі ви розмістили це? Корінь, ".vs" чи ".vscode"? Імовірно, корінь робочої області є єдиним рекомендованим місцем, якщо файл також переходить до контролю редагування (що я настійно рекомендую), але я не зміг його працювати.
точка розриву

Наскільки я знаю, наразі єдине дійсне місце .vscode. Для контролю ревізії git одна з можливостей - використовувати для .gitignoreтакого типу !.vscode/tasks.json.
аттдона

14

Ось як я налаштував свій VS для C ++

Не забудьте змінити відповідні шляхи до місця встановлення вашого MinGW

start.json

{
   "version": "0.2.0",
   "configurations": [
       {
           "name": "C++ Launch (GDB)",                
           "type": "cppdbg",                         
           "request": "launch",                        
           "targetArchitecture": "x86",                
           "program": "${workspaceRoot}\\${fileBasename}.exe",                 
           "miDebuggerPath":"C:\\mingw-w64\\bin\\gdb.exe", 
           "args": [],     
           "stopAtEntry": false,                  
           "cwd": "${workspaceRoot}",                  
           "externalConsole": true,                  
           "preLaunchTask": "g++"                    
           }
   ]
}

task.json

{
    "version": "0.1.0",
    "command": "g++",
    "args": ["-g","-std=c++11","${file}","-o","${workspaceRoot}\\${fileBasename}.exe"],
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceRoot}"],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
        }
    }
}

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceRoot}",
                "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++",
                "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/x86_64-w64-mingw32",
                "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/backward",
                "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include",
                "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/tr1",
                "C:/mingw-w64/x86_64-w64-mingw32/include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "__GNUC__=6",
                "__cdecl=__attribute__((__cdecl__))"
            ],
            "intelliSenseMode": "msvc-x64",
            "browse": {
                "path": [
                    "${workspaceRoot}",
                    "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++",
                    "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/x86_64-w64-mingw32",
                    "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/backward",
                    "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include",
                    "C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/tr1",
                    "C:/mingw-w64/x86_64-w64-mingw32/include"
                ]
            },
            "limitSymbolsToIncludedHeaders": true,
            "databaseFilename": ""
        }
    ],
    "version": 3
}

Довідка:

  1. C / C ++ для коду VS

  2. Шаблон c_cpp_properties.json


13
можливо, ви також хочете трохи пояснити, що роблять ваші налаштування, а не просто копіювати пасти
uitty400

2
мені важко пояснити свої налаштування.
Лі Куй

Не забудьте змінити відповідні шляхи до місця встановлення вашого MinGW.
Ентоні Лей

Ви також можете включити підпапки рекурсивно з / ** замість повторення різних папок у"C:/mingw-w64/lib/gcc/x86_64-w64-mingw32/7.2.0/include"
Лоренц,

10

Щоб створити / запустити проекти C ++ у коді VS, вам потрібно вручну налаштувати файл task.json, який знаходиться у папці .vscode у папці робочої області. Щоб відкрити task.json , натисніть клавішу ctrl + shift + P і введіть Налаштування завдань , а потім натисніть клавішу Enter , вона переведе вас до task.json

Тут я надаю файлу task.json кілька коментарів, щоб зробити файл більш зрозумілим, його можна використовувати як орієнтир для налаштування задач.json , я сподіваюся, що він стане в нагоді

task.json

{
    "version": "2.0.0",

    "tasks": [

        {
            "label": "build & run",     //It's name of the task , you can have several tasks 
            "type": "shell",    //type can be either 'shell' or 'process' , more details will be given below
            "command": "g++",   
            "args": [
                "-g",   //gnu debugging flag , only necessary if you want to perform debugging on file  
                "${file}",  //${file} gives full path of the file
                "-o",   
                "${workspaceFolder}\\build\\${fileBasenameNoExtension}",    //output file name
                "&&",   //to join building and running of the file
                "${workspaceFolder}\\build\\${fileBasenameNoExtension}"
            ],
            "group": {
                "kind": "build",    //defines to which group the task belongs
                "isDefault": true
            },
            "presentation": {   //Explained in detail below
                "echo": false,
                "reveal": "always",
                "focus": true,
                "panel": "shared",
                "clear": false,
                "showReuseMessage": false
            },
            "problemMatcher": "$gcc"
        },

    ]
}

Тепер, заявляючи безпосередньо з документації задач на код VS

опис властивості типу :

  • type : Тип завдання. Для спеціального завдання це може бути оболонка або обробка. Якщо оболонка вказана, команда інтерпретується як команда оболонки (наприклад: bash, cmd або PowerShell). Якщо процес вказаний, команда інтерпретується як процес для виконання.

Поведінкою терміналу можна керувати, використовуючи властивість презентації в task.json . Він пропонує такі властивості:

  • виявляють : контролює, чи інтегрована панель інтегрованого терміналу передньою. Дійсні значення:

    • завжди - Панно завжди підводиться спереду. Це за замовчуванням
    • ніколи - Користувач повинен явно перевести термінальну панель на передню панель за допомогою команди Вид> Термінал (Ctrl + `).
    • беззвучний - Термінальна панель виводиться на передню панель, лише якщо вихід не перевіряється на помилки та попередження.
  • фокус : керує тим, що термінал фокусує вхід чи ні. За замовчуванням помилково.

  • echo : контролює, чи виконана команда відлунюється в терміналі. За замовчуванням вірно.
  • showReuseMessage : Контролює, чи потрібно відображати повідомлення "Термінал буде повторно використаний завданнями, натисніть будь-яку клавішу, щоб закрити його".
  • панель : контролює, чи розділяється екземпляр терміналу між виконанням завдань. Можливі значення:
    • Спільний : Термінал є спільним і вихід цього іншого запуску додається до цього ж терміналу.
    • присвячений : Термінал призначений для конкретного завдання. Якщо це завдання буде виконано ще раз, термінал повторно використовується. Однак вихід іншої задачі представлений в іншому терміналі.
    • нове : для кожного виконання цього завдання використовується новий чистий термінал.
  • clear: контролює, чи очищений термінал перед запуском цього завдання. За замовчуванням помилково.

9

Від розчарування у зв'язку з відсутністю чіткої документації я створив проект Mac на github, який повинен просто працювати (як для побудови, так і для налагодження):

vscode-mac-c-example

Зауважте, що для цього потрібні XCode та розширення cpptools VSCode Microsoft.

Я планую зробити те ж саме для Windows та Linux (якщо Microsoft спочатку не напише гідну документацію ...).


8

Перш за все, відкрийте розширення (Ctrl + Shift + X) та встановіть 2 розширення:

  1. Code Runner
  2. C / C ++

Потім перезавантажте код VS та виберіть кнопку відтворення у верхньому правому куті, яку програма запускає у вихідному терміналі. Ви можете побачити вихід Ctrl + Alt + N. Щоб змінити інші функції, перейдіть до налаштувань користувача. введіть тут опис зображення


Це повторення попередніх відповідей.
JDługosz

5

Якщо ваш проект має конфігурацію CMake, це досить прямо вперед до налаштування VSCode, наприклад налаштування, tasks.jsonяк показано нижче:

{
    "version": "0.1.0",
    "command": "sh",
    "isShellCommand": true,
    "args": ["-c"],
    "showOutput": "always",
    "suppressTaskName": true,
    "options": {
        "cwd": "${workspaceRoot}/build"
    },
    "tasks": [
        {
            "taskName": "cmake",
            "args": ["cmake ."]
        },
        {
            "taskName": "make",
            "args" : ["make"],
            "isBuildCommand": true,
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": "absolute",
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        }
    ]
}

Це передбачає, що buildв корені робочої області є папка з конфігурацією CMake.

Існує також розширення інтеграції CMake, яке додає команду "Створення CMake" до VScode.

PS! problemMatcherЄ установка для clang-builds. Для того, щоб використовувати GCC Я вважаю , що вам потрібно змінити , fileLocationщоб relative, але я не перевіряв це.


5

Ось як я налаштував свій VS для C ++ за допомогою компілятора g ++, і він чудово працює, включаючи параметри налагодження:

файл task.json

{
    "version": "0.1.0",
    "command": "g++",
    "isShellCommand": true,
    // compiles and links with debugger information
    "args": ["-g", "-o", "hello.exe", "hello.cpp"],
    // without debugger information
    // "args": ["-o", "hello.exe", "hello.cpp"],
    "showOutput": "always"
}

файл start.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C++ Launch (Windows)",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceRoot}/hello.exe",
            "MIMode": "gdb",
            "miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe",
            "stopAtEntry": false,
            "cwd": "${workspaceRoot}",
            "externalConsole": false,
            "visualizerFile": "${workspaceRoot}/my.natvis"
        }
    ]
}

У мене також встановлено розширення 'C / C ++ для коду Visual Studio', встановлене у VS Code


Я вмію компілювати, але не налагоджувати C / C ++ на VSCode. У цій статті йдеться про те, що налагодження підтримується лише на Linux. Також нещодавно я створив цю тему для того ж. Будемо вдячні за будь-яку допомогу ...
Mahesha999

5

Основна проблема тут полягає в тому, що побудова та зв'язування програми C ++ значною мірою залежить від використовуваної системи збирання. Вам потрібно буде підтримувати такі окремі завдання, використовуючи деяку комбінацію плагінів та спеціальний код:

  1. Загальна підтримка мови C ++ для редактора. Зазвичай це робиться за допомогою ms-vscode.cpptools, який, як очікується, більшість людей також обробляє безліч інших матеріалів, таких як підтримка збірки. Дозвольте мені заощадити трохи часу: це не так. Однак ви, мабуть, цього все одно захочете.

  2. Побудувати, очистити та відновити завдання. Саме тут ваш вибір системи складання стає величезною справою. Ви знайдете плагіни для таких речей, як CMake та Autoconf (Бог допоможе вам), але якщо ви використовуєте щось на зразок Meson і Ninja, вам доведеться написати кілька помічників і налаштувати спеціальний файл "task.json" для впорайтеся з цим. Майкрософт повністю змінив усе, що стосується цього файлу, протягом останніх кількох версій, аж до того, як його слід називати, і місць (так, placeS), на які він може йти, нічого не кажучи про зміну формату. Гірше, що вони підтримують сумісність назад, щоб не забути використовувати клавішу "версія", щоб вказати, який варіант ви хочете. Деталі дивіться тут:

https://code.visualstudio.com/docs/editor/tasks

... але зверніть увагу на конфлікт із:

https://code.visualstudio.com/docs/languages/cpp

ПОПЕРЕДЖЕННЯ: У ВСІХ ВІДПОВІДАХ НЕБЕЗПЕЧНО, БІЛЬШЕ, ЩО СПОЧАЄТЬСЯ З "ВЕРСІЄЮ", ВІДМОВЕНО НЕГО 2.0.0, ЗАБЕЗПЕЧЕНО.

Ось найближче, що я маю на даний момент. Зауважте, що я перекладаю більшість важких підйомів до сценаріїв, це насправді не дає мені жодних записів у меню, з якими я можу жити, і немає жодного хорошого способу вибору між налагодженням та випуском, не вводячи ще трьох явних записів у тут. З урахуванням сказаного, ось що я можу терпіти як мій файл .vscode / task.json на даний момент:

{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
    {
        "label": "build project",
        "type": "shell",
        "command": "buildscripts/build-debug.sh",
        "args": [],

        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            // Reveal the output only if unrecognized errors occur.
            "echo": true,
            "focus": false,
            "reveal": "always",
            "panel": "shared"
        },

        // Use the standard MS compiler pattern to detect errors, warnings and infos
        "options": {
            "cwd": "${workspaceRoot}"
        },
        "problemMatcher": {
            "owner": "cpp",
            "fileLocation": ["relative", "${workspaceRoot}/DEBUG"],
            "pattern": {
                "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
    },
    {
        "label": "rebuild project",
        "type": "shell",
        "command": "buildscripts/rebuild-debug.sh",
        "args": [],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            // Reveal the output only if unrecognized errors occur.
            "echo": true,
            "focus": false,
            "reveal": "always",
            "panel": "shared"
        },

        // Use the standard MS compiler pattern to detect errors, warnings and infos
        "options": {
            "cwd": "${workspaceRoot}"
        },
        "problemMatcher": {
            "owner": "cpp",
            "fileLocation": ["relative", "${workspaceRoot}/DEBUG"],
            "pattern": {
                "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
    },
    {
        "label": "clean project",
        "type": "shell",
        "command": "buildscripts/clean-debug.sh",
        "args": [],

        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            // Reveal the output only if unrecognized errors occur.
            "echo": true,
            "focus": false,
            "reveal": "always",
            "panel": "shared"
        },

        // Use the standard MS compiler pattern to detect errors, warnings and infos
        "options": {
            "cwd": "${workspaceRoot}"
        },
        "problemMatcher": {
            "owner": "cpp",
            "fileLocation": ["relative", "${workspaceRoot}/DEBUG"],
            "pattern": {
                "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
    }
]

}

Зауважте, що теоретично цей файл повинен працювати, якщо ви помістите його в корінь робочої області, щоб ви не застрягли, перевіряючи файли в прихованих каталогах (.vscode) у вашій системі контролю версій. Я ще не бачив, що насправді працює; протестуйте його, але якщо він не вдається, введіть його .vscode. Так чи інакше, IDE буде сукати, якщо його все одно немає. (Так, на даний момент, це означає, що я змушений був перевірити .vscode на підрив, що мені не приємно.) Зауважте, що мої сценарії побудови (не показані) просто створюють (або відтворюють) каталог DEBUG за допомогою, у мій випадок, мезон і побудова всередині нього (використовуючи, в моєму випадку, ніндзя).

  1. Бігти, налагоджувати, прикріплювати, зупиняти. Це ще один набір завдань, визначений у "start.json". Або, принаймні, раніше. Microsoft зробила такий хеш документації, я навіть навіть не впевнений.

Ось файл build-script / build-debug.sh, як приклад. В ідеалі вони успадкують контекст збірки (налагодження, випуск, профілювання тощо), але я не можу зрозуміти, як Code управляє цим, якщо він навіть має концепцію. Вибачте від форматування; йти, StackOverflow, йти. #! / bin / bash, якщо [! -d "DEBUG"]; то mkdir DEBUG meson DEBUG fi cd DEBUG ninja if [$? -ек 0]; то вийти ще 0 вийти $? fi
точка розриву

Знову ж таки: натисніть CTRL-SHIFT-B після того, як це буде на місці, щоб підняти завдання збирання. Я б дійсно віддав перевагу правильному головному меню, наповненому цим, але я ще не зрозумів, як це зробити.
точка розриву

4

З оновленим кодом VS ви можете це зробити наступним чином:

  1. Натисніть ( Ctrl+ P) і введіть:

    ext install cpptools
    
  2. Відкрийте папку ( Ctrl+ K& Ctrl+ O) і створіть новий файл всередині папки з розширенням .cpp (наприклад: hello.cpp ):

  3. Введіть свій код і натисніть зберегти.

  4. Натисніть ( Ctrl+ Shift+ Pі введіть, Configure task runnerа потім виберіть otherвнизу списку.

  5. Створіть пакетний файл у тій самій папці з назвою build.bat та додайте до корпусу файлу наступний код:

    @echo off
    call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64     
    set compilerflags=/Od /Zi /EHsc
    set linkerflags=/OUT:hello.exe
    cl.exe %compilerflags% hello.cpp /link %linkerflags%
    
  6. Відредагуйте файл task.json таким чином і збережіть його :

    {
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "build.bat",
    "isShellCommand": true,
    //"args": ["Hello World"],
    "showOutput": "always"
    }
    
  7. Натисніть ( Ctrl+ Shift+ Bдля запуску завдання збірки. Це створить файли .obj та .exe для проекту.

  8. Для налагодження проекту натисніть F5та виберіть C ++ (Windows) .

  9. У файлі start.json відредагуйте наступний рядок і збережіть файл:

    "program": "${workspaceRoot}/hello.exe",
    
  10. Удар F5.


Я використовую останню VSC. Ви втратили мене на кроці 4. Налаштування запуску завдань недоступна.
Луї

2

Ви можете посилатися на цей останній список, який має 2.0.0завдання для версії Visual Studio Code, https://gist.github.com/akanshgulati/56b4d469523ec0acd9f6f59918a9e454

Ви можете легко компілювати та запускати кожен файл, не оновлюючи завдання. Він є загальним, а також відкриває термінал для введення записів.


2

Можна використовувати Runner Code Runner для запуску коду зі значком відтворення вгорі праворуч ans за допомогою клавіші швидкої клавіші: Ctrl+Alt+Nі для переривання Ctrl+Alt+M. Але за замовчуванням він показує лише вихід програми, але для отримання вводу потрібно виконати кілька кроків:

Ctrl +, а потім відкриється меню налаштувань і Розширення> Запустити конфігурацію коду прокрутіть вниз його атрибути і знайдіть Правка в налаштуваннях.json натисніть на нього і додайте наступний код, наполягайте на ньому:

{ "code-runner.runInTerminal": true }


Ctrl + збільшує для мене
MM

це ctrl кома, а не ctrl плюс для відкриття налаштувань
Ешлі Фернандес

1

Зараз у Microsoft є розширення мови C / C ++. Ви можете встановити його, перейшовши до "швидко відкритої" речі ( Ctrl+ p) та ввівши:

ext install cpptools

Про це ви можете прочитати тут:

https://blogs.msdn.microsoft.com/vcblog/2016/03/31/cc-extension-for-visual-studio-code/

Це дуже базово, станом на травень 2016 року.


2
Це відповідь лише для прикордонних посилань . Ви повинні розширити свою відповідь, щоб включити сюди якомога більше інформації та використовувати посилання лише для довідки.
jhpratt
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.