C++のファイル作成と実行

C++ファイルの作成

C++ファイルの拡張子について

C++で主に用いられる拡張子は「.cpp」や「.c++」です。

g++コンパイラでは「.C」や「.cc」という拡張子も利用可能です。

ただし、OSによってはファイル名に大文字小文字を区別しないものや、「+」記号を利用できない場合がありますので、利用しているコンパイラ(処理系)の仕様を確認する必要があります。


C++のHelloWorldプログラム

C++言語でのHelloWorldプログラムは以下のようになります。


// Hello World プログラム
#include <iostream>
using namespace std;

int
main(void)
{
    cout << "Hello World!" << endl;

    return(0);
}

C++の開発環境

Windowsの開発環境

WindowsではVisualStudioの「VC++」が利用できます。

VC++ならば、Windowsフォームを用いるGUIアプリケーションの開発が効率的です。


統合開発環境ではなく、コマンドラインでの開発を行いたい場合には以下のコンパイラが利用できます。

  • MinGW
  • borland c++

Unix系の開発環境

UNIX系OSでは、GNU Compiler Collection(gcc)に含まれる「g++」が利用できます。

g++でのコンパイル方法は以下の形式です。


$ g++ -o binary_name filename.cpp

C++の基本文法

C++の基本的な文法はC言語と同じですが、いくつか拡張された点があります。


Bool型(boolean)

C++ではbool型を扱うことができるようになりました。

bool型とは、真(true)と偽(false)の2種類の値だけを扱う最も単純な構造の型です。

主に論理演算や関係演算の結果や関数の戻り値にbool型で扱います。

なお、C++ではtrueを「1」、falseを「0」に自動的に変換を行います。


#include <iostream>

int main()
{
    bool result = true;
    if(result == false){
        printf("result is false.\n");
    }else{
        printf("result is true.\n");
    }

    return(0);
}

コメントについて

C++では、C言語の「/* コメント部分 */」という形式に加え、「// コメント部分」という形式のコメント機能が追加されました。

「//」から行末までがコメントアウトされます。ただし、この形式では、複数行に渡ってコメントアウトすることはできません。


// コメント

変数定義

C言語では変数の定義はブロックの先頭でしか行えませんでしたが、C++では任意の場所で変数を定義することができます。

例えば、for文でのみ一時的に利用する変数をfor文のループ開始時に定義することが可能です。


int sum = 0;
for(int i = 0; i < 9; i++){
    sun += i;
}

ユーザ定義型における型指定子の省略が可能

C++では、struct,enum,union,classで定義されたユーザ定義型を使用する場合に、型指定子を省略することが可能です。

C++ならば構造体型のtypedefを宣言すること自体が不要となります。


struct box{
    int x;
    int y;
}

struct box box1; // C言語での定義方法
box box2         // C++では型指定子が省略できます。

関連ページ