🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

解決済

3回答

1741閲覧

visual studio code

GokaTokyo

総合スコア66

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2017/11/30 11:18

mac で visual studio code インストールしたら、file → new → project ボタンがないです。また、テスト用にtest.c で実行したら、エラーになります。これはインストール間違ってるでしょうか。

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

VS CodeはIDEというよりテキストエディタに近いです。
ですので、通常のVSのようにプロジェクト作成機能がなくとも不思議ではありません。

Visual Studio Code (VS Code) Docs

Q: 新しいプロジェクトを作成して実行するにはどうすればいいですか?
A: VS Code には従来の新規プロジェクト 作成*やプロジェクト テンプレートは実装されていません。ですから、開発の興味対象に応じて追加コンポーネントと足組を構成する必要があります。そこで YeomanやNPM を使用することで、 テンプレート、およびツールを使用してプロジェクトを作成できます。


エラーが生じているのは、単にmain関数の返り値をvoidにしているからです。

error: void function 'main' should not return a value

C

1#include <stdio.h> 2 3int main(void) { 4 printf("fffffffff"); 5 return 0; 6}

これなら問題ないはず。

投稿2017/11/30 11:24

編集2017/11/30 11:29
LouiS0616

総合スコア35668

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

ビルドエラーについてはLouiS0616さんが書かれている通りなので省略して、
VSCodeでC++のビルドを行なう為の大まかな手順を説明します。

VSCodeは初期状態ではC/C++のシンタックスハイライト(色分け)位しか機能がないので、
MicorosoftのC/C++拡張機能をインストールします(重要!)。

C/C++

プロジェクトの代わりにフォルダを作成します
フォルダ名は仮にhelloとします。
これがVSCode上でのプロジェクト(ワークスペース)の代わりとなります。

ファイル > フォルダを開くhelloフォルダを開き、
test.chelloフォルダ内に保存します。

タスク > ビルド タスクの実行を選択肢ます

ビルドタスクの実行

初回は実行するビルド タスクがありません。タスクを構成する…といったメッセージが出るのでそれをクリック。

実行するビルド タスクがありません。

これもそのままクリック

テンプレートから task.json を生成

C/C++のテンプレートは無いので、タスクテンプレートの選択でOthersを選択

タスク テンプレートを選択

以下のようなtask.jsonファイルが出来るのでこれを編集します。

json

1{ 2 // See https://go.microsoft.com/fwlink/?LinkId=733558 3 // for the documentation about the tasks.json format 4 "version": "2.0.0", 5 "tasks": [ 6 { 7 "label": "echo", 8 "type": "shell", 9 "command": "echo Hello" 10 } 11 ] 12}

以下がgccでの設定例です。
ファイルの管理は自動では行ってくれないのでソースファイルが複数ある場合はその都度、
task.jsonファイルにソースファイル名を追加する必要があります。

"type": "shell",の行は"type": "process",にするか削除して下さい。

json

1{ 2 // See https://go.microsoft.com/fwlink/?LinkId=733558 3 // for the documentation about the tasks.json format 4 "version": "2.0.0", 5 "tasks": [ 6 { 7 "label": "Debug Build", 8 "command": "gcc", 9 "args": [ 10 "-g", 11 "-O0", 12 "-Wall", 13 "test.c", 14 ], 15 "group": { 16 "kind": "build", 17 "isDefault": true 18 }, 19 "problemMatcher": "$gcc" 20 } 21 ] 22}

以降、タスク > ビルド タスクの実行でコンパイルを行うことが出来るようになります。


コンパイルしたプログラムを実行するには

デバッグ > デバッグの開始を選択肢ます(デバッグサイドバーの歯車のアイコンからでもOK)。

デバッグの開始

初回はデバッグに対応している言語の一覧が出るのでC++ (GDB/LLDB)を選択します。

C++ (GDB/LLDB)

以下のような内容のlaunch.jsonファイルが作成されるので、
"program": "enter program name, for example ${workspaceFolder}/a.exe",の部分と、
"miDebuggerPath": "/path/to/gdb",の部分を環境に合わせて書き換えます。

前者がデバッグ対象の実行ファイル、後者がデバッガのパスになります。

json

1{ 2 // IntelliSense を使用して利用可能な属性を学べます。 3 // 既存の属性の説明をホバーして表示します。 4 // 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387 5 "version": "0.2.0", 6 "configurations": [ 7 { 8 "name": "(gdb) Launch", 9 "type": "cppdbg", 10 "request": "launch", 11 "program": "enter program name, for example ${workspaceFolder}/a.exe", 12 "args": [], 13 "stopAtEntry": false, 14 "cwd": "${workspaceFolder}", 15 "environment": [], 16 "externalConsole": true, 17 "MIMode": "gdb", 18 "miDebuggerPath": "/path/to/gdb", 19 "setupCommands": [ 20 { 21 "description": "Enable pretty-printing for gdb", 22 "text": "-enable-pretty-printing", 23 "ignoreFailures": true 24 } 25 ] 26 } 27 ] 28}

投稿2017/11/30 13:23

編集2017/11/30 14:04
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

GokaTokyo

2017/11/30 14:49

遅くまで詳しくご説明いただき、ありがとうございます!!やってみます!!感動中。。
退会済みユーザー

退会済みユーザー

2017/11/30 14:52

エラーメッセージの部分、英語だからと尻込みせずによく読んでみることをオススメします。 難しいものはGoogle翻訳にコピペでもOK ^と~で間違った部分・修正すべき点が指し示されていてとても親切なメッセージになっています。 void main() ^~~~ int はvoidにアンダーラインが引いてあって、そこをintにすれば良いとわかるはずです。
GokaTokyo

2017/11/30 15:09

ご説明通りに実行したら、ターミナルでgcc test.cでしょうか。実行後写真をアップロードします。
guest

0

イメージ説明説明説明](d3c09337bd5c5fb79d8fa366f3cf3400.png)説明](d2f895252324f699678414b6e5575551.png)](df49c33eef38505ce1e9f8e4bd637d5b.png)

投稿2017/11/30 15:10

GokaTokyo

総合スコア66

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/11/30 15:20

task.jsonとlaunch.jsonを作成したら、コンパイルは(Windowsの場合)Ctrl+Shift+B、デバッグはF5ですね。 デバッグ無しで実行はCtrl+F5です。 ターミナルからコマンドは実行しなくて良いです。 Macだと異なるキーが割り当てられてるかもしれませんが、手元にMacが無いので確認できないです。 あと、ターミナルからa.outを実行する時は./a.outじゃないとダメかも? Windows上のbashもそういう仕様なので。
退会済みユーザー

退会済みユーザー

2017/11/30 15:34

質問とは関係ありませんがUIが英語表記なのが気になったので、 もし日本語化したいのであれば以下のURLを参照してみて下さい。 VS Codeで言語サポートが日本語にならない場合の対処法 https://qiita.com/SFPGMR/items/6d4ac281d6b66d1fc5ab
GokaTokyo

2017/12/01 02:42

lunatea さん ./a.outで実行できた。本当にありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問