Up

Win32コンソールアプリケーションの新規作成

Visual C++ 2010 の場合

 

標準C++準拠のプログラムとしてWin32コンソールアプリケーションを作成する。WondowsのフォームをベースとするGUIアプリケーション(C++/CLR)プログラミングについては、<岡本安晴「大学生のための心理学VC++プログラミング入門」勁草書房、第U部 Visual C++/CLRプログラミング>で説明しているので参照されたい。

 Win32コンソールアプリケーションの新規作成をVisual C++ 2010 Expressによって説明する。Visual C++ 2010 Expressはマイクロソフト社のウェブサイト

http://www.microsoft.com/japan/msdn/vstudio/express/

において無料で入手できる。

 Visual C++ 2010を起動してメニュ「ファイル|新規作成|プロジェクト」(図1)

図1

 

を選ぶと、「新しいプロジェクト」ダイアログボックスが表示される(図2)。

図2

 

「インストールされたテンプレート」からVisual C++の下のWin32をクリックして選び、右側に表示されているものから Win32 コンソールアプリケーションをクリックして選ぶ。プログラムを置くフォルダは「場所」で指定する(図3)。

説明: 説明: 無題.jpg

図3

 

「参照」ボタンをクリックすると「プロジェクトの場所」フォルダ選択のダイアログボックス(図4)が表示されるので、適当なフォルダを「プロジェクトの場所」として指定し、「フォルダの選択」ボタンをクリックする。

図3においてプログラム名(プロジェクト名)を「名前」に設定すると、同じ名前が「ソリューション名」欄にも表示され、ソリューション名となる。「場所」とプロジェクト名、ソリューション名の関係は、上記「大学生のための・・・」の「第0章 はじめに」で説明しているが、ここでは気にする必要はない。

図4

 

図3のダイアログボックスにおいて、「場所」、「プロジェクト名」など必要な設定が終わればOKボタンをクリックする。Win32 アプリケーション ウィザード フォームが現れる(図5)。

図5

 

「次へ」ボタンをクリックすると図6のダイアログボックスが提示される。

図6

 

「コンソール アプリケーション」と「プリコンパイル済みヘッダー」にチェックが付いていることを確認して「完了」ボタンをクリックする。しばらく待つと図7の画面になる。

図7

 

図7のエディタでは、Win32コンソールアプリケーションとして最小限必要なものが用意されているので、これをビルド(コンパイル・リンク)して実行することができる。ビルド・実行は、メニュ「デバッグ|デバッグ開始」を選ぶか、F5キーを押すと行われる。新規作成したプログラムの場合、ビルド・実行すると図8のダイアログボックスが表示されるので、「はい」ボタンをクリックしてビルドを行う。

図8

 

ビルドが終了すると、ビルドされた実行可能なプログラムが実行される。瞬間的にコンソール画面が表示されるが、プログラムの実行がすぐに終了するので、コンソール画面も消える。Visual C++は図9の状態になっているが、下の「出力」ウィンドウに実行形式のプログラムsapmle1.exeが正常に終了したこと(code 0)が表示されている。

 

説明: 説明: 無題.jpg

図9

 

表示されたコンソール画面がすぐに消えないように留めておくために、入力待ちのコードを追加する。C++の標準入出力はcin および cout であるが、cinおよびcoutの簡単な使い方は上記「大学生のための・・・」のPp. 27-2835-3655-56301-302などで説明しているので参照されたい。図9のプログラムにコードを書き加えて図10のようにする。cinおよびcoutを使用するためにヘッダーファイルiostream#includeされていることに注意。

図10

 

図10の状態でメニュ「デバッグ|デバッグ開始」を選ぶか、F5キーを押すと、図11のダイアログボックスが表示される。

図11

 

「はい」ボタンをクリックすると、ビルドにエラーなければビルドされたプログラムが実行され、図12のコンソール画面(画像のサイズを小さくするために画面の端をドラッグして小さくしてからコピーしたものである)が表示される。

図12

 

図12は、入力文「std::cin >> a;」が実行されていて入力待ちの状態である。例えば、キーボードで1を押すと図13のようになり、Enterキーを押すとキーボードで設定した数値の文字列(図13の場合は1)が整数値に変換されて変数aに設定される。

図13

 

Enterキーを押すことにより文「std::cin >> a;」の実行が終了すると、次の「return 0;」が実行されてプログラムの実行終了となり、提示されているコンソール画面も消える。

 プログラムにエラーがあるときは、メニュ「デバッグ|デバッグ開始」を選ぶ、あるいはF5キーを押してビルドを実行したとき、図14のメッセージボックスが表示される。

図14

 

このときは、「いいえ」ボタンを押してエディタに戻り(図15)、エラーを修正する。

説明: 説明: 無題.jpg

図15

 

図15では、出力 ウィンドウに12行目のcinが定義されていないと説明されている。これは図15のコードの場合、cinに対して、その属する名前空間stdが指定されていないことによる。「std::」を書き加えて、再度F5キー押すか、メニュ「デバッグ|デバッグ開始」を選んでビルド・実行を行う。

ヘッダーファイルiostream、および名前空間stdについては、ウェブサイト<標準入出力cincout>に説明とサンプルプログラムを用意した。

 図15のエディタでは、エディタウィンドウの左に行番号が表示されているので、出力 ウィンドウで示されたエラーの個所(行)を簡単に見つけることができる。この行番号がエディタに表示されていないときは、以下の操作で表示させることができる。

 メニュ「ツール|オプション...」を選ぶ(図16)。

図16

 

オプション ダイアログボックスが表示される(図17)。

説明: 説明: 無題.jpg

図17

 

図17の場合、項目「テキストエディター」の下に何も下位項目が表示されていないので、左側の白い右向き三角形をクリックする。「テキスト エディター」の下位項目が表示される(図18)。表示された項目から「C/C++」を選び、その左側の白い右向き三角形をクリックして下位項目を表示する。その下位項目から「全般」を選んでクリックする。右側の領域において「行番号」にチェックを入れる。

説明: 説明: 無題.jpg

図18

 

OK」ボタンをクリックしてオプションの設定を終了すると、エディタ画面の左に行番号が表示されるようになる。

項目の左の黒三角形をクリックして白三角形に変えると、その下の項目は隠される。

Visual C++ win32 コンソールアプリケーションプログラム例のソースコードリストはウェブサイト<http://y-okamoto-psy1949.la.coocan.jp/booksetc/introvcpp/pdflistings/>に多数用意した。これらはVisual C++/CLR用のものをwin32用に書き直したもので名前の末尾にcioを付けて区別している。

 

図9のプログラムにおいて、「デバッグ|デバッグなしで開始」メニュを選ぶか「Ctrlキーを押した状態でF5キーを押す」と図19のウィンドウが表示された状態になる。

図19

 

この状態で何かキーを押すと図19のウィンドウは消えて、プログラムの実行終了となる。この「デバッグなし」でのプログラムの実行は、プログラムが実行時エラーなどで暴走したときの対応が簡単ではない。「F5キーを押す」あるいは「デバッグ|デバッグ開始」によってデバッグ状態で実行すると、暴走したときは「デバッグ」メニュによる対応が可能であることが多いので、プログラムの開発時あるいはプログラミングの学習の時はデバッグ条件下でのプログラムの実行がよい。デバッグで実行されたプログラムは、メニュ「デバッグ|デバッグの停止」で実行を終了できることが多い。デバッグなし、あるいはデバッグ条件下、いずれの場合もプログラム実行中の時のコンソール・ウィンドウの右上角のX印の付いた赤いボタンをクリックして実行を終了できる場合がある。

 

 なお、「岡本安晴『大学生のための心理学VC++プログラミング入門』勁草書房」では、第T部「標準C++準拠プログラミング」pp.17 – 156 において、標準C++準拠プログラミングの説明を行っている。Win32コンソールアプリケーションプログラム例は<Visual C++/Win32(標準C++準拠)サンプルプログラム>に用意している。

 

 また、次のウェブサイトなども用意している。

標準入出力cinおよびcoutのサンプルプログラムのウェブサイト

簡単な統計分析プログラミング例

 

 

Up