No.2ベストアンサー
- 回答日時:
いくつか不明な点があります。
> ビジュアルスタディオに書いたもの
Visual Studioは原則的にMicrosoftが作ったモノで、色々とヴァージョンがあるんですよね。
今だと主流がVisual Studio 2017かあるいはVisual Studio Codeかのどちらかだと思うんですが。
clang云々、って言う限り、恐らくCodeの方じゃないか、ってアタリは付けてますが、果たしてどちらでしょう。
> 左上のファイルから名前を付けて保存して、それを開発者コマンドプロンプトにドラックアンドドロップしました。
マニュアルは読んだんでしょうか?
「保存したファイルを開発者コマンドプロンプトにドラッグアンドドロップせよ」って書いてましたか?
(少なくとも、僕はそんな事は書いてませんね)
> これで実行されるのですか。
まあフツーに考えると「実行される」とは思えないんですが。
C言語もJavaも
コンパイル -> 実行
と二段階必要ですよねぇ。
先程の解答でも、(例えばclangを使うなら)DOS窓に「コマンドを打ち込む」のが原則だ、と言う話をしました。
> インストールしなければならないもの
平たく言うとコンパイラが無い、って事ですかねぇ・・・。
ぶっちゃけ、設定だ何だってメンド臭いのなら、Visual Studio Community 2017でもインストールすればいいんじゃないですかね?
Visual Studio Community 2017(一番左側の無償ダウンロード):
https://visualstudio.microsoft.com/ja/downloads/ …
Visual Studio 2017の導入(解説):
http://tunasalmon.com/2017/09/21/visual-studio-2 …
> プログラムの例
あれ、写真のプログラムを丸写しすれば充分な筈ですが・・・。ま、いっか。
例えば有名なHello Worldプログラム(Hello, world!って表示するだけのプログラム)は次のようなモノです。
#include <stdio.h>
int main(void){
printf("Hello, world!\n");
return 0;
}
写真: Linux版Visual Studio Code+clangの例
基本的にはEmacsと同じで、やはり画面上方でソースコード(hello.c)編集、下方のコンソールで「コマンド入力して」、大事な事なんでもう一回言いますよ、「コマンド入力して」ソースコードをコンパイル、そして「コマンド入力して」、大事な事なんでもう一回言いますよ、「コマンド入力して」プログラムを実行します。
ただし、Visual Studioシリーズの場合、コマンド入力の代わりに、【デバッグ】プルダウンメニューから【デバッグなしで開始】を選んでも同様の事が出来る模様。ショートカットはCtrl+F5(Ctrlキーを押しながらF5キーを押す)。
詳細は上のリンク、”Visual Studio 2017の導入(解説)”を参照の事。
No.4
- 回答日時:
おそらくDOS窓(実行画面(Hello Worldが出るところ))が一瞬開いて瞬時に閉じているのでしょう。
貴方様がどの標準出力関数を使用しているかわかりませんが…
coutならば
cout<<"Hello World"<<endl; のあと
printfならば
printf("Hello World"); のあと
にsystem("pause"); を追加してみてください。
system関数とはWindowsのコマンドプロンプトの関数を使いますよ~ってことです。
この場合は、コマンドプロンプトのpauseコマンドを使いますってことです。
こうすることによって一時待機ができるのでDOS窓が閉じなくなり、Hello Worldと表示されているのがわかると思います。
No.3
- 回答日時:
結局、Visual Studio Community 2017にしたんですかね?
> これは正常終了と出ていますが
僕自身はVisual Studio Community 2017を使ってないんですが、メッセージを見る限り成功した模様です。
何が成功したのか、と言うと「コンパイル/ビルド」が成功した、って事で実行はまた別フェーズなんですよ。
取り敢えず目で確認して欲しいのは、
c:\users\yuuki\source\repos\saityousen\Debug
ってフォルダ内に
saityousen.exe
って言う実行ファイルが生成されているかどうか、です。
(これはマウスだと、Cドライブ直下のusersフォルダ内のsourceフォルダ内のreposフォルダ内のsaityousenフォルダ内のDebugフォルダ内、ってカタチでエクスプローラからクリックし続けて行けば「そこにsaityousen.exeと言うファイルがあるかどうか」って事です。目視した方がコンパイラが「何を作ったのか」分かりやすいでしょう。)
んでぶっちゃけた話、実行させるには、GUI世代的に直感的には「そこにある」saityousen.exeを「ダブルクリック」すれば書いたプログラムが走るでしょう・・・・が、恐らく、一瞬DOS窓が開いて消えるんじゃないかしら(笑)。多分そうなってると思いますね(確認してみて下さい)。
基本的に、我々が書く「プログラム」ってのは、特にプログラミング初心者だと、普段我々が使ってる、例えばWordであるとか、Excelであるとか、みたいな「ダブルクリックして起動する」プログラムではないんです。
そうじゃなくってプログラムの基本はCLI(Command Line Interface/コマンドラインインターフェース:CUIとか呼んでる人が多いけど、それは和製英語です)でのプログラムなんですね。ここが違う。
より正確に言うと、大昔のパソコン、例えばNEC PC-9801(知ってますか?・笑)みたいないわゆる「MS-DOS」で動かすようなプログラムなんです。
逆に言うと、昔・・・30〜40年前にプログラミングを勉強しだした今のオッサン(笑)とかは
「目の前で使ってるソフトウェアのようなプログラムが書けた!」
とか当時は感動してたらしいんですが(笑)、一方、今プログラミング始めたような若者は
「何これ?こんなショボい事しか出来ないの?マウスは?」
とか思っちゃって(笑)、この辺完全に世代断絶があります(笑)。
とは言っても、CLIのプログラミングをする、ってのが第一歩なのは(今の所・・・言語によって違うケースもありますが)間違いないトコで、って事はDOS窓で書いたプログラムを「コマンドとして」実行しないといけないのです(これも今まで2回に渡って書いてますよね?ピンと来てないかもしれませんが)。
取り敢えず、Visual Studioに開発者コマンドプロンプトがあるのなら、cdと打ってEnter/Returnキーを叩いて下さい。それで現在のコマンドプロンプトの「位置」(カレントディレクトリと呼びますが)が分かります。
多分状況から考えると
c:\users\yuuki\source\repos\saityousen
にいるんじゃないか、とは思うんですが。
結局、DOS窓を開いてもそうなんですが、全部で
\users\yuuki\source\repos\saityousen\Debug\saityousen.exe
って打ってEnter/Return叩けば実行されると思いますよ。
写真: 昔のNEC PC-9801の起動画面(MS-DOS)。
当時の少年(今やオッサン達・笑)はPC起動したら、ゲームする前に必ずこういう「真っ黒」な画面(コマンドプロンプト)に対峙してたものだった・・・・・・。
No.1
- 回答日時:
> 無料のビジュアルスタディオやノートパッドはダウンロードした
これらに関しては、まずは「マニュアルを読め」としか言いようがありませんね。
従って、これ以降はあくまで「一般論」です。
> プログラムを書いた後どうやって実行してよいのかわかりません。
Windowsの場合、基本的には通称DOS窓と言われるブツを起動します。
DOSプロンプトの起動方法:
http://www.k-cube.co.jp/wakaba/server/dos_prompt …
初心者のようなんで、あまりややこしいプログラム(例えばGUIのブツとか)は組まない前提で話しますが、基本的にソースコードのコンパイル/プログラムの実行は全てこのDOS窓を経由して行います。
> clangがなにかもよくわかっていません。
clangはC言語(と言えば語弊がありますが)のコンパイラの一つです。要するにソフトウェアの名称ですね。
他に似たようなソフトウェアにgccなんかがあります。
> ファイルを保存するときの拡張子は何にしたらよいかもわかりません。
本当の事を言うと、別に拡張子は何にしても構わないのです。と言うか、無くても構いません。
基本的に拡張子と言うものは「ソフトウェア側が自動で何に従うデータか判別する為のモノ」であって、別に「付けなきゃならない」モノでもないんです。
ただし、慣習としては、C言語のソースコードの拡張子はc、Javaのソースコードの拡張子はjava、となってます(あまりにそのままですね!)。
写真: ありきたりな例。
環境はLinux、エディタはEmacsの場合。
画面上部がテキストエディタ状態で、良くある「Hello Worldプログラム」、下部がターミナル状態(Windowsで言うDOS窓)になっている。
上部のテキストエディタ部分で書かれたソースコードは"hello.c"と言う名前で保存されている。
ターミナルではCコンパイラclangを用いて
clang hello.c
と言うコマンドでソースコードがコンパイルされて、デフォルト名の実行ファイルa.outが作られる。
あとは、a.outがそのまま「プログラムの実行名」になるので、再びターミナルからa.outと打てば、実行結果として"Hello, World!"が表示される。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Macターミナルで実行中のプログ...
-
system関数を使用してsuコマン...
-
sendkeysにてALT+CTRL+INSERTを...
-
ヘッダファイル? malloc.hと...
-
clock関数は正確じゃないの?
-
VisualStudio でのコンソール・...
-
コンソールでの日本語入力について
-
MACで動く実行ファイルをWindow...
-
WINDOWSでシェルプログラムを実...
-
プリントスクリーンをプログラ...
-
以下のプログラムのif文に関し...
-
VB上で実行中の無限ループの止め方
-
システム資源とは?
-
RPG パラメーターについて
-
VBAで外部プログラムを非表示で...
-
Macでのソケットプログラミング...
-
プログラムを走らせる
-
【C言語プログラミング】 time(...
-
CPad for LSI C-86の実行結果
-
バックグラウンドのプロセスの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Macターミナルで実行中のプログ...
-
sendkeysにてALT+CTRL+INSERTを...
-
VBAで外部プログラムを非表示で...
-
実行時エラー429
-
並列計算をしたときのシステム...
-
C言語でプログラムを再起動
-
C言語で途中までしか、プログラ...
-
VB上で実行中の無限ループの止め方
-
プログラムを走らせる
-
他のPC上にあるexeを、そのP...
-
Excel VBA から外部プログラム...
-
RPG パラメーターについて
-
他の実行ファイルを実行するプ...
-
Windows10でDOSゲーム
-
プロセス間通信について
-
終了してもプログラムが実行し...
-
アクセス[ファイルを開かずに、...
-
ラズパイ プログラム 自動起動 ...
-
ヘッダファイル? malloc.hと...
-
MACで動く実行ファイルをWindow...
おすすめ情報
回答者様、丁寧なご回答ありがとうございます。
しかしいまいち成功の実感がありません。
ビジュアルスタディオに書いたものを左上のファイルから名前を付けて保存して、それを開発者コマンドプロンプトにドラックアンドドロップしました。これで実行されるのですか。
私のパソコンの環境はエディションがwindows10Home プロセッサがintel(R) i5-7400CPU@3.00GHzです。できれば、インストールしなければならないもの、プログラムの例、ファイルの保存の仕方、実行の仕方。をすべて順序立てて説明してほしいです。
設定系は何となく理解できました。
ありがとうございます。
しかし実行したときに肝心のHello world が出ません。
実行した結果これが出てきました。(プロジェクト名はsaityousenにしました。)
1>------ ビルド開始: プロジェクト: saityousen, 構成: Debug Win32 ------
1>Source1.cpp
1>saityousen.vcxproj -> c:\users\yuuki\source\repos\saityousen\Debug\saityousen.exe
========== ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ ==========
これは正常終了と出ていますが、どうしたらきれいに実行できるようになりますか?また設定やソフトなどでファイルを開けないようにしている原因はありますか?
設定系は何となく理解できました。
ありがとうございます。
しかし実行したときに肝心のHello world が出ません。
実行した結果これが出てきました。(プロジェクト名はsaityousenにしました。)
1>------ ビルド開始: プロジェクト: saityousen, 構成: Debug Win32 ------
1>Source1.cpp
1>saityousen.vcxproj -> c:\users\yuuki\source\repos\saityousen\Debug\saityousen.exe
========== ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ ==========
これは正常終了と出ていますが、どうしたらきれいに実行できるようになりますか?また設定やソフトなどでファイルを開けないようにしている原因はありますか?