イントロダクション

 どうも、ロベールです。

 みなさん、「C/C++言語は難しい」と思ってはいませんか? はい、その通り、難しいです。...なんて言ってはミもフタもないですね(笑)。ここでは、難しいとみなさんが「思いこんでいる」であろうC/C++言語を易しく解説していきます。簡単だと「思いこむ」ことが大事です。自己暗示、自己暗示。

 著者の使用している環境はVC++なので、とりあえず説明はVC++に準じてしていきます。言語に関する部分ではこのことはあまり関係ないのですが、ツールを扱う部分については Boaland C++ 等を使用している場合は、自分で読み替えて下さい。(^ ^;


 突然ですが、みなさんは「高級言語」という言葉を聞いたことはあるでしょうか? 高級言語というのは別にキットの値段の高い言語ではありません。ハードに依存する部分を少なくして、プログラムをもっとわかりやすく、簡単に組めるようにしたものです。これと対をなすのが「低級言語」です。低級言語はハードにベタベタに依存していて、マシン語に近いものになります。

 高級言語の代表といえば、やはりBASICでしょう。で、低級言語の代表はやはりアセンブリ言語です。(俗にアセンブラとも言われます)

 BASICでは文章を表示したければ

PRINT "表示してね"

とします。簡単ですね。ですが、低級言語になると、作業の環境によってプログラムが変わってきます。アセンブリ言語(MASM)+16ビット機+MS−DOS環境であれば、

CODE    SEGMENT
        ASSUME  CS:CODE, DS:CODE
        ORG     100H
START:  MOV     AX, CS
        MOV     DS, AX
        MOV     AH, 09H
        MOV     DX, OFFSET STRING
        INT     21H
        MOV     AX, 4C00H
        INT     21H
STRING  DB      '表示してね$'
CODE    ENDS
        END     START

赤いところが文章を表示するところ。その他はプログラムの初期化や終了処理など。

となります。たった一行表示するのに大変ですね。

 では、C/C++言語はどちらになるのでしょうか? 普通は高級言語と言われています。上と同じ事をしようとすれば、

#include <stdio.h>

int main()
{
    printf("表示してね");
    return 0;
}

 となります。充分短いですね。ですが、C/C++言語は特殊な一面があります。それは多くの初心者を惑わせる「ポインタ」の存在です。「メモリ」を意識してプログラムを行うというのは、低級な作業です。そのほかにも、ハードに依存する場面にも出会うことがあります。これでは高級言語と断言することはできません。実際に、どちらにするかは意見の分かれるところのようです。

 著者はどうかというと、間をとって「中級言語」だと思っています。そこがC/C++言語の便利なところでもあり、難点でもあるのです。いろいろなことができる反面、少し面倒なのです。

 ですので、特別な用途にしか使わないのであれば、それ用の言語の存在を確かめるのがいいでしょう。(Mathematica など。)その上でC/C++言語を選んだのならば、是非頑張って...否! 楽しんでC/C++言語を習得しましょう。

 このHPがそのための助けになれば幸いです...。


Last update was done on 1999.2.20

この講座の著作権はロベールが保有しています