電子書籍の厳選無料作品が豊富!

質問させていただきます。
相談内容はJAVAやC言語を書いた後実行ができないということです。
無料のビジュアルスタディオやノートパッドはダウンロードしたのですがそこにプログラムを書いた後どうやって実行してよいのかわかりません。clangがなにかもよくわかっていません。ファイルを保存するときの拡張子は何にしたらよいかもわかりません。正解がわからないので、エディターのインストールの時点から細かく教えていただきたいです。

質問者からの補足コメント

  • うーん・・・

    回答者様、丁寧なご回答ありがとうございます。
    しかしいまいち成功の実感がありません。
    ビジュアルスタディオに書いたものを左上のファイルから名前を付けて保存して、それを開発者コマンドプロンプトにドラックアンドドロップしました。これで実行されるのですか。
    私のパソコンの環境はエディションがwindows10Home プロセッサがintel(R) i5-7400CPU@3.00GHzです。できれば、インストールしなければならないもの、プログラムの例、ファイルの保存の仕方、実行の仕方。をすべて順序立てて説明してほしいです。

      補足日時:2018/09/04 23:56
  • どう思う?

    設定系は何となく理解できました。
    ありがとうございます。
    しかし実行したときに肝心の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 スキップ ==========

    これは正常終了と出ていますが、どうしたらきれいに実行できるようになりますか?また設定やソフトなどでファイルを開けないようにしている原因はありますか?

      補足日時:2018/09/05 15:07
  • どう思う?

    設定系は何となく理解できました。
    ありがとうございます。
    しかし実行したときに肝心の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 スキップ ==========

    これは正常終了と出ていますが、どうしたらきれいに実行できるようになりますか?また設定やソフトなどでファイルを開けないようにしている原因はありますか?

      補足日時:2018/09/05 15:39

A 回答 (4件)

いくつか不明な点があります。



> ビジュアルスタディオに書いたもの

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の導入(解説)”を参照の事。
「ヴィジュアルスタディオとノートパッドに書」の回答画像2
    • good
    • 0

おそらくDOS窓(実行画面(Hello Worldが出るところ))が一瞬開いて瞬時に閉じているのでしょう。


貴方様がどの標準出力関数を使用しているかわかりませんが…

coutならば
cout<<"Hello World"<<endl; のあと

printfならば
printf("Hello World"); のあと

にsystem("pause"); を追加してみてください。

system関数とはWindowsのコマンドプロンプトの関数を使いますよ~ってことです。
この場合は、コマンドプロンプトのpauseコマンドを使いますってことです。

こうすることによって一時待機ができるのでDOS窓が閉じなくなり、Hello Worldと表示されているのがわかると思います。
    • good
    • 0

結局、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起動したら、ゲームする前に必ずこういう「真っ黒」な画面(コマンドプロンプト)に対峙してたものだった・・・・・・。
「ヴィジュアルスタディオとノートパッドに書」の回答画像3
    • good
    • 0

> 無料のビジュアルスタディオやノートパッドはダウンロードした



これらに関しては、まずは「マニュアルを読め」としか言いようがありませんね。
従って、これ以降はあくまで「一般論」です。

> プログラムを書いた後どうやって実行してよいのかわかりません。

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!"が表示される。
「ヴィジュアルスタディオとノートパッドに書」の回答画像1
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!