string字符串用法及基础

字符串的输入的方式

(1)先定义

1.string s;

2.char c; 或 char c[(具体的大小)];

区别:string类型的有各种方法,且也是一个字符串数组的封装;而char类型是单字符类型,如果要输入字符串,必须定义为char类型的数组,同时方法类型很少。

(2)输入

1.cin>>s; cin>>c;

2.gets(s); gets(c); 输入字符串

3.getline(cin,s) //读取一行字符串,读入不需要考虑最后的换行符,但是需要知道长度

4.while(cin.get()!='\n') //输入一个字符串,前提没有回车

5.s[i] = getchar() //int i=0 ; ;i++; 一次读入一个字符,直到输入回车键结束

(3)输出

cout<<s;
puts(s);

字符串的方法

(1)strlen(s); //返回字符串s的长度(int型)

(2)字符串转化为整数

例:s="abc";
for(int i=0;i<s.length();i++){
s[i]=s[i]-'a'+n; //n为你想要a成为的任何整数
}

(3)整数转化为字符型

例: int n =3;
char c; c= n+'0'; //整数类型3转化为字符类型3

(4)s.find(c) //在字符串s中寻找字符串c,如果有返回第一次出现的位置,如果没有则返回0(不寻常的0);

例: if(s.find(c) == string::npos) //没有找到的情况下
s.find(c,int pos); //c为查找的字符串,pos为从s字符串pos的位置开始查找

另外: A在Ascall中的位置为65;
a的位置为97;
0的位置为48;
空格的位置为32;
回车键(即'\n')用CR控制符;

(5)s.compare(c);

//若参与比较的两个串值相同,则函数返回 0;若字符串 S 按字典顺序要先于 S2,则返 回负值;反之,则返回正值。

(6)s.append(c);

//将c加到s字符串后面

s.append(n,c); //将n个c添加到s字符串后面

posted on 2020-02-04 17:44  &起雾了  阅读(437)  评论(0编辑  收藏  举报

导航