62
53

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Visual Studio CodeでC++のコンパイルと実行を一発で行う

Last updated at Posted at 2017-07-13

#概要
Visual Studio CodeでC++のコンパイルと実行を一発で行う.

##背景
調べてもプログラムの実行にデバッグ機能を使うものばかりだった.もっとサクッとやりたいのでコマンド一発で出来るようにする.
VScodeではタスクという機能を使ってコマンドを実行できるらしいので,実行のためにtasks.jsonを編集する.

#準備
C++実行までの事前準備は調べるとたくさん出てくる.

コンパイラ
コンパイラを入れるのにVisual Studioをインストールしたくなかったので,MinGWでG++をインストールした.
コンパイル用エクステンション
Ctrl+Shift+Xで拡張機能バーを出しC++と検索して,C/C++という拡張機能をインストールする.  

#プログラム
VSCodeでファイルを新規作成してcppファイルで保存する.
中身は適当なコードにする.

hello.cpp
#include <iostream>

using namespace std;

int main(){
    cout << "aaa" << endl; 
    return 0;
}

#tasks.jsonファイルの作成
新規作成後はjsonファイルが作成されていない.
ctrl+shif+Pでコマンドパレットを出し,taskと入力する.
幾つか候補が出てくるので,タスク:タスクランナーの構成を選択するとファイルが自動で生成される.
生成されたtasks.jsonファイルの中身を書き換える.

tasks.json
{
    "version": "0.1.0",
    "command": "g++",
    "isShellCommand": true,
    "showOutput": "always",
    "args": ["-o","${fileBasenameNoExtension}","${file}","&","${fileBasenameNoExtension}.exe"],
    "isBuildCommand": true
}

g++コマンドにargsで引数を渡している.
以下のコマンドと同等になる.
g++ -o hello.exe hello.cpp & hello.exe
コンパイルして出来た実行形式ファイルを実行してるだけ.

##tasks.jsonで使える環境変数
${file}などのように環境変数を使うことが出来る.
詳細は公式ドキュメントで
https://code.visualstudio.com/Docs/editor/tasks#_variable-substitution

#コンパイル&実行
プログラムの画面でctrl+shift+bでコンパイルと実行が行われる.

#おわりに
とりあえず一発でコンパイルから実行まで出来るjsonファイルを書きました.
コンパイル用タスクと実行用タスクに分割して,それぞれをインクルードして使うのも良いと思います.

62
53
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
62
53

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?