C++サンプルプログラムソースコードのリスト
岡本安晴「大学生のための心理学VC++プログラミング入門」勁草書房に用意したサンプルプログラムをpdfファイルとしてプリント出力したものを用意した。本ウェブサイトの後半に各プログラムリストの項目名を並べ、項目名のクリックにより、該当プログラムリストのpdfファイルが表示されるようにした。本書では、Windowsでのプログラミングは.NET対応のVisual C++/CLRを利用すると便利であるので、プロジェクトの種類として.NET対応の「CLR」を選んでいる(本書「0.はじめに」参照)。しかし、.NET対応でない標準C++プログラミングを行いたい場合もある。本ウェブサイトでは、本書での.NET対応のプログラムをwin32版に書き直したプログラムのリストも用意した。.NET対応のリストのpdfファイル名がlisting.pdfの場合、win32版の方はlistingcio.pdfという名前になっている。項目名は、.NET対応の方(本書のサンプルプログラム)が項目1であれば、win32対応の方は項目1cioとした。.NET版とwin32版の相違は、.NET版の方は標準入出力をConsoleクラス型で行い、文字列はString型を利用しているが、win32版の方は標準入出力はcinおよびcoutで行い、文字列はchar *型あるいはstringクラス型を利用していることである。.NET対応のコンソールアプリケーションの新規作成方法は本書「0.はじめに」で説明しているが、win32コンソールアプリケーションはウェブサイト<Win32 コンソール・アプリケーション>を用意して説明した。win32コンソールアプリケーションをLinuxあるいはUnixでの標準C++プログラムとして使用するときは、
#include “stdafx.h”
を削除し、メイン関数頭部
int _tmain(int
argc, _TCHAR* argv[])
を
int main(int aargc, char * argy[] )
あるいは
int main()
に変更するなど、少しの修正でよい。例えば、
====================================
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int _tmain(int argc, _TCHAR*
argv[])
{
double a, b, sum;
cout
<< "a = ";
cin
>> a;
cout
<< "b = ";
cin
>> b;
cout
<< endl << "a + b = "
<< a + b << endl;
cout
<< endl << "Enter any character,
then quit." << endl;
string
s;
cin
>> s;
return 0;
}
====================================
は
====================================
#include <iostream>
#include <string>
using namespace std;
int main(int argc, char *
argv[])
{
double a, b, sum;
cout
<< "a = ";
cin
>> a;
cout
<< "b = ";
cin
>> b;
cout
<< endl << "a + b = "
<< a + b << endl;
return 0;
}
====================================
と変更すると、Linuxでビルド・実行することができる(Ubuntuで確認済み)。Linuxなどにおいてコンソール内で実行形式のプログラムファイルを呼び出して実行するときは、プログラムの実行が終了してもコンソール画面は表示されたままなので、入力待ち「cin >> s;」を用意する必要はない。LinuxなどでのC++プログラミングに関する簡単な説明は本書「A2 Linuxでのプログラミング」pp.301-303 に用意されている。
pdfファイルの項目
リストのプログラムの説明は本書を参照のこと
四則演算の例、四則演算の例cio、割り算と余り、割り算と余りcio、演算の優先順位、演算の優先順位cio、coutの使用例、coutの使用例cio、
true、falseと数値、true、falseと数値cio、if文―1、if文―1cio、if文―2、if文―2cio、if文―3、if文―3cio、
条件演算子、条件演算子cio、switch文、switch文cio、do文、do文cio、while文、while文cio、for文、for文cio、breakとcontinue、breakとcontinue_cio、
平均値と分散、平均値と分散cio、平均と分散Console、
統計計算のデータがファイルに用意されている場合はファイル入出力機能を用いるが、標準C++におけるファイル入出力は別のウェブサイトで説明している。
整数型、整数型cio、文字型、文字型cio、エスケープシーケンス、エスケープシーケンスcio、列挙体、列挙体cio、
ポインタ、ポインタcio、delete演算子、delete演算子cio、ポインタと配列、ポインタンと配列cio、
関数、関数cio、参照渡しの引数、参照渡しの引数cio、配列引数、配列引数cio、多次元配列引数、多次元配列引数cio、
関数へのポインタ、関数へのポインタcio、関数へのポインタ引数、関数へのポインタ引数cio、
関数のオーバーロード、関数のオーバーロードcio、再帰、再帰cio、クィックソート、クイックソートcio、
簡単なクラス型、簡単なクラス型cio、クラス型ポインタ、クラス型ポインタcio、クラス型の継承、クラス型の継承cio、
仮想関数、仮想関数cio、コンストラクタ、コンストラクタcio、デストラクタ、デストラクタcio、
例外の発生、例外の発生cio、例外の処理、例外の処理cio、runtime_error型、runrime_error型cio、
関数テンプレート、関数テンプレートcio、クラステンプレート、クラステンプレートcio、
岡本安晴 作