' P '

whatever I will forget

C++ Strings 宣言と初期化、使い方など

うおおお C++スタイルだとこんなことができるなんて全く知りませんでした!
C言語スタイルに慣れすぎてていやだ。

まず初めに

C++ Stringsを使う場合は、

#include <string>
using namespace std;

上記がincludeされていることが条件

代表的な宣言と初期化

string s1;
string s2 {"peronperon"};
string s3 {s2};
string s4 {"peronperon", 5};
string s5 {s3, 0, 5};
string s6 (3, 'X');

s1に関してはゴミデータなしで初期化できている。
s2はCスタイルっぽい
s3みたいに宣言されている変数を使って宣言&初期化もできる
s4は、左側の文字列を何文字使って初期化するか、例だと"peron"になる
s5は、初期化文字列(例だとs3の変数を使って初期化)、開始文字列、何文字使うか。例だと"peron"になる
s6は注意これだけ()で宣言。 例だとXXXになる。

string型は下記みたいに普通に代入できる

string s1;
s1 = "hello, peron peron!"

文字列の連結

string example1 {"lalala"};
string example2 ("hahaha"};

string example3 = example1 + example2; //lalala hahaha
string example3 = "what" + "the" + "heck" // これはNG

配列の中身の見方

exchar[0]
exchar.at(0)

とできる。

ちなみに、char型でもloopができる。

for (char c: exchar) {
    cout << c << endl;

頻繁に使われるfunction

exchar.substr(0,4); //pero
exchar.find('p'); //0
exchar.length(); //5