○string
■文字の結合
#include <stdio.h>
#include <string>
int main(){
std::string a,b,c;
a="test";
b="inaba";
c=a+b;
printf("%s\n",c.c_str());
return 0;
}
処理結果
testinaba
■char*への変換
#include <stdio.h>
#include <string>
int main(){
std::string a;
char*c="いなば";
a=c;//char*→string
char *d=(char*)a.c_str();//string→char*
printf("%s\n",d);
return 0;
}
処理結果
いなば
■同じかどうかの判定
#include <stdio.h>
#include <string>
int main(){
std::string a,b;
a="テスト";
b="テスト";
if(a==b) printf("同じ\n");else printf("違う\n");
a="テスト";
b="いなば";
if(a==b) printf("同じ\n");else printf("違う\n");
return 0;
}
処理結果
同じ
違う
■大小関係の判定
#include <stdio.h>
#include <string>
int main(){
std::string a,b;
a="a";
b="aa";
if(a<b) printf("<\n");else printf(">=\n");
a="aa";
b="b";
if(a<b) printf("<\n");else printf(">=\n");
a="aa";
b="ab";
if(a<b) printf("<\n");else printf(">=\n");
return 0;
}
処理結果
<
<
<
■ポインタのstringの扱い
#include <stdio.h>
#include <string>
int main(){
std::string*str;
std::string a;
str=&a;
*str="test";
printf("%c\n",str[0][0]);
printf("%c\n",str[0][1]);
printf("%c\n",str[0][2]);
printf("%c\n",str[0][3]);
return 0;
}
出力結果
t
e
s
t
▲トップページ
>
Windows と C++