ポインタを利用して表示する
先ほどの配列をポインタで表したように文字列を1つずつ取り出してみましょう。
#include <iostream>
using namespace std;
int main(){
char a[] = "ABC";
//char型のポインタを宣言する
char *b;
//charのポインタbにaの先頭アドレスを代入する
b=a;
//配列を表示する
for(int i=0;i<3;i++){
cout << b[i] << endl;
}
}
実行結果は以下の通りです。
A
B
C
さて、様々な関数を用いて文字列を表現してみましょう。
#include <iostream>
#include <string>
using namespace std;
int main(){
char a[] = "ABCDEFGH";
char b[10];
char c[10];
//bにaの内容をコピーする
strcpy(b,a);
cout << b << endl;
//指定分内容をコピーする※自動的に終端記号は挿入されないことに注意
strncpy(c,a,5);
c[5] = '\0';
cout << c << endl;
//文字列を検索する⇒一致した以降の値を返す
cout << strstr(a,"CD") << endl;
}
実行結果は以下の通りです。
ABCDEFGH
ABCDE
CDEFGH