はじめまして。

HALと申します。今世の中がこういった状況ですので、

外に出られない学生の方に何か少しでも、教えられることがあればと思い、

趣味で勉強しているC++のブログを始めました。

 

 

ここでは、C++というプログラミング言語を学びたい初心者(主に小・中学生と高校生、そしてこれからプログラミングを始められる方)を対象に記事を書いていきます。

 

すでに、C++に関しての知識があり、+αの知識を求められる方には、全く意味のない記事です。

そういう方はブラウザバックしていただいた方がいいと思います。

 

 

前書きが長くても仕方ありませんので、早速始めていきたいと思います。

 

■C++でどんなものが作れるの??

正直、コンピューターを使用しているものは大体作れます。

例えばメモ帳も電卓も、家庭用ゲーム、スマートフォンアプリ、

指紋認証アプリだって作れますし、ロケットだって飛ばせてしまいます。

ここの記事では、そこまですごいものを作る記事は紹介しないと思いますが

全て必要な基礎知識なので、面白くはないですが、頑張って読んでいただければ幸いです。

 

■C++って何?

C++というのはプログラミング言語といって、コンピューターとお話をするための言語です。

フランス人と話をするためには、フランス語が必要ですよね。

コンピューターと話をするためにも言語が必要で何種類かあるのですが、C++はその内の一種類です。

 

ただし、コンピューターとお話をするためには、必要なものがあります。

ひとまずそれらを揃えましょう。

 

■準備するもの

・パソコン

・テキストエディタ

・コンパイラ

 

順番に説明していきます。

・パソコン

これに関しては説明不要だと思います。

スマートフォンなどでこの記事を見られていて「PCがないよ」という方は、

申し訳ありません。この先には行くことができません・・・。

 

・テキストエディタ

コンピュータとお話をするための言語を記入するものです。

このテキストエディタに色んな文章を記入して、後述するコンパイラというソフトによって

コンピューターに命令を実行してもらいます。

では、早速テキストエディタをインストールしましょう。

テキストエディタも何種類かあるのですが、オススメは「terapad」というテキストエディタです。

https://tera-net.com/library/tpad.html

このサイトからダウンロードできますので、利用してみてください。

 

・コンパイラ

これは、上述のテキストエディタで記入したプログラミング言語を

コンピューターが理解するためのソフトだと思ってください。

こちらは「Visualstudio」というソフトが自分はよく使っています。

https://visualstudio.microsoft.com/ja/downloads/

無料ダウンロードしてみてください。

 

ダウンロードするとこのような画面にいきましたでしょうか。

ここまできたら、C++によるデスクトップ開発という項目にチェックを入れ、インストールしてみてください。

 

そして、インストールしている間に作成してほしいファイルが存在します。

Cドライブに「samples」という空のフォルダを作ってください。

 

Cドライブへの行き方がわからないよという方は次の通りにしてみてください。

 

適当にファイルを開いてみてください。

 

左にPCと書かれた項目があります。そちらをクリックしてみて下さい。

その中にデバイスとドライブという項目がありますので、その中の「Windows(C;)」というものを開いてください。

その中に「samples」というフォルダを作ってください。

Macを持っていないので、Macの説明はできません・・・。

Macをご使用の方は自力で探してください・・・。

 

全てインストールできれば、準備完了です。

次からは、実際にコンピューターに入力してみましょう。

 

■コンピューターにHello,World!と表示しろと命令する

コンピューターにHello,World!と表示しろと命令してみます。

テキストエディタ(Terapad)を開いてください。

 

そこに次のように入力してみてください。

※必ず半角英数字で記入してください

 

#include <iostream>
using namespace std;

int main(){
  cout << "Hello,World!" << endl;
  return 0;
}
 
 
何がなにやらですよね。
順番に説明していきます。
 
 
 
 
まず、int main(){という文章について
※#include~using namespace stdは後述します。
 
int はinteger(整数の意味)という意味です。 このmain関数の結果は整数ですよと表しています。
ただしこの関数は計算をする関数ではなく、ただ文章を表示することしか命令されていないので、特に整数というわけではないのですが…
 
main(){ はmain関数という名前の関数ですよという意味です。
main関数というのは非常に大事な関数の名前です。
なぜなら、main関数というのは、コンピューターがまず最初に実行する内容だからです。
コンピューターはまずmain関数を探して、その内容を実行します。
 
そしてその内容とは
 
main関数次の{ }の中に記述します。
このmain関数は最初のint main(){ の部分から最後の } まで実行しろという意味です。
 
 
 
次にcout << "Hello,world!" << endl;という文章に関して
 
coutはconsole outの意味です。 コンソールというのはコンピューターと人間が意思疎通するために利用しているもののことです。
パソコンとキーボードや、家庭用ゲーム機の本体やスマートフォンなどもコンソールです。
つまりコンソールにアウト(出せ)と命令しているのです。
 
何を?
 
""の間に挟まれた文字をです。
""のなかの文字さえ変えれば、好きな文字を出力できます。
 
最後のendlはend line(行の終わり)の略です。
これで改行することができます。
 
そして、endlの横にある ; (セミコロン)
これがすごく忘れやすいので注意してください。
これは、一つの命令の終わりに必ずつけます。
これがないと、コンピューターはどこまでが一つの文章か理解できないのです。
 
 
そしてreturn 0;という文章。
実はC++には関数の中の計算結果を返す機能がついているのですが、
今回は返す結果がないのでreturn 0; (返せ 0を)と記入しておきます。
 
これでmain関数の内容は以上です。
 
 
 
後回しになっていた#include <iostream>という文章の意味について。
#include <iostream>はいわゆる、coutという文章の説明書なのです。
 
実はcoutという文章はC++に最初から備わっているものではありません。
#include <iostream>を記述しないとコンピューターは
「cout?? え??coutってどういう意味??」となってエラーになります。
 
説明書をあらかじめ渡して置いてあげることで、
コンピューターはcoutが出てきても
「cout!! たしか、coutの説明書貰っていたな・・・。あ!<<の次の文字を表示すればいいのか」となって、理解できるようになります。
 
説明書なので事前に渡して置く必要がありますよね。
なので一番最初に記入します。
 
using namespsace std;はstdという名前空間を使用します。という意味です。
stdという名前空間の中にcout等の説明書が入っていますよ。
ということなので#include <iostream>を利用する場合は、必ず記入するようにしておいてください。
 
本当はもう少しきちんとした違う役割があるのですが、ここで説明するとややこしくなるので、省略します。
 
 
長くなりましたが、まとめると、
・プログラムを作る際は必ずmain関数を作ってね。
・coutを使用する場合は#include <iostream>の説明書を一番最初に渡しておいてあげてね。
#include <iostream>を利用する場合は必ずusing namespace std;を記入してね。
 
ということだけ、覚えておいてください。
 
 
 
最後にこの作ったプログラムを実行してみましょう。
 
 
 
■記入したプログラムを実行する
まず先ほど記入したプログラムをCドライブに制作した「samples」フォルダに保存してください。
 
名前はなんでもいいのですが、とりあえず打つのが面倒くさいので「hello.cpp」という名前で保存しました。
「helloworld.cpp」でも、「main.cpp」でも、「a.cpp」でも、自分がわかればどんな名前でもいいです。
ただし、最後に.cppとだけはつけておいてください
 
次にvisual studioを起動してください。
もしかするとmicrosoft IDなどが必要になるかもしれません。
適当に作ってログインしてください。
起動すると次のような画面になると思います。
 
 
ここで右下のコードなしで続行をクリックしてください。
 
そしてツール→Visual Studioコマンドプロンプトを選んでください。
 
真っ黒い画面にc:\Program Files~のようなアルファベットの画面が出てきたと思います。
 
その続きに次のように記入してください。
 
cd /samples
 
エンターを押すとc:\samples>と出てくると思います。
 
その次には、
 
cl /EHsc hello.cpp
 
と入力します。
hello.cppの部分は保存したファイル名です。
 
すると、アルファベットがたくさん出てきたと思います。
/out:hello.exe
hello.obj
 
と出てくると成功です。
もし、
hello.cpp(8):error C2143:構文エラー
のような文章が出た場合は失敗です。
その時は、何か書き間違えているのです。
一度見直してみてください。
 
 
成功したら、c:\samples>の続きに
hello.exeと記入してみてください。
 
Hello,World!と表記されれば、見事完成です。
 
 
■cd /とは
cdはchange directoryの略です。
ディレクトリとはコンピューターがどこで記憶しているかの住所のようなものです。
今回はsamplesという住所の場所に保存され記憶しているので
cd (操作対象となっているディレクトリを変えろ) 
どこに?→ /samplesとなったわけです。
 
 
■cl /とは
clはcompile and link (コンパイルとリンク)の略です。
コンパイルというのは、
今私たちは、HelloWorldを表示しろという命令書をコンピューターに渡しました。
しかしこの命令書はただ渡すだけでは、コンピューターは読む事が出来ないのです。
コンピューターが理解するためにはコンピューターが理解できる言語に翻訳してあげる必要があるのです。
この翻訳を行ってくれるのがコンパイラ(VisualStudio)で、翻訳する作業をコンパイルというのです。
 
 
そしてこの翻訳作業がされて出てきたものがhello.objというオブジェクトです。
このオブジェクトはそのままでは、コンピューターは実行できません。
実行可能にするためにはexeファイルという形式にしなくてはなりません。
objからexeファイルに変換してくれるのがリンクという作業です。
 
つまりclは翻訳と実行可能ファイルに変換する作業を一緒にやってねという内容になります。
 
ちなみにEHscの部分は例外処理といって、何か想定していないこと(例えば、利用可能なメモリが存在しないのにメモリ確保の必要がある場合など)が起こった場合の対処をどうするか。その際の指示が記入されています。
細かく説明すると、ややこしいので、clを記入するとそのあとに記入しなくてはならない程度に覚えていてください。
 
 
■終わりに
ひとまず今回はこれで終了です。
今回は、Hello,Worldという文字を表示するだけのプログラムを行いました。
不明点などあれば追記していこうと思います。
続きは、反響があれば書いていきます。
無ければ、残念ですがこのブログは閉じてしまいます。
 
今回の記事を観てプログラミングを勉強し始めた方は、ひとまず、
次のプログラムを何も見ないで書いて実行してみてください。
 
LIDAと画面に表示するプログラムを制作せよ。
 
 
反復練習が肝心だと思います。
何も見ずに実行できれば、この記事の内容は100パーセント理解できているのではないかと思います。
ちなみにLIDAというのは、僕の好きなアーティストです・・・
 
最後まで見ていただき、ありがとうございました。