そろそろC++やります
そろそろC++をやります。そろそろC++をやりたいからです。
何回やるかはわかりません。基礎を理解するまでやろうと思います。
※ 初心者がメモレベルで記録するので、技術記事としてはお力になれないかもしれません。
内容
- HelloWorld
- 条件分岐とループ処理
環境構築
前に少し触った時に環境は出来上がっていたので、環境構築は飛ばします🙇♀️
HelloWorld
最初はやっぱり「Hello World」。
#include<iostream> using namespace std; int main() { cout << "Hello World\n"; return 0; }
g++を使ってコンパイルし、./a.out
で実行します。ここはC言語に似ています。
$ g++ main.cpp $ ./a.out Hello World
ここでは簡単に説明すると
#include<iostream>
は includeディレクティグといい、指定したファイルの内容を読み込みますusing namespace std
は usingディレクティブといい、名前空間(namespace)内の全てにアクセスできるようになります。
今回include
とusing namespace
が両方書かれているのは、iostream
ファイルの中の std
名前空間にある cout
を使いたかったからです。
cin / cout
cin
とcout
は標準入出力に使われて、コマンドラインと対話する時に使うことができます。
#include<iostream> using namespace std; int main(){ string s; cin >> s; cout << s << endl; return 0; }
string s;
と変数を用意して cin
で受け取った入力を代入すします。
endl
: こちらによると endl はバッファ出力、\n
だと考えても良さそうです。
endl
はどこにあるか? iostream の中で #include <ostream>
をして、その中に定義されていました。
最初なので基本的な文について触れていきます
if文
if (n == 10) { cout << "n == 10" << endl; } else if (n == 3) { cout << "n == 3" << endl; } else { cout << "other" << endl; }
string 同士の比較は True(1) になる。
string s = "hoge"; string s2 = "hoge"; cout << (s == s2) << endl; // Output: 1
for文
for (int i = 0; i < 10; i++) { cout << i << endl; }
foreach のようなことが for ステートメントで実行できます。
int intArray[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for (int v : intArray) { cout << v << endl; }
while文
これもC++特有の書き方ではありません。
while (n < 20) { n++; }
do-while文
これもC++特有の書き方ではない。Statementを実行してから評価を行います。
do { n++; } while (n < 10);
switch分
switch (n) { case 2: cout << "two" << endl; break; case 4: cout << "four" << endl; break; default: cout << "default" << endl; break; }
参考リンク
感想
条件分岐やループの基本的な書き方は他の言語と対して変わりありませんでした。include
やusing namespace
も標準ライブラリを用いるなら、そう書くのかと納得する内容でした。
次回は、基礎に戻って組み込み型に触れてみたいです。