小言_互联网的博客

C++ String头文件常用的内容

345人阅读  评论(0)

1. getline

getline不是C库函数,而是C++库函数。它遇到以下情况发生会导致生成的本字符串结束:

(1) 到文件结束

(2)遇到函数的定界符

(3)输入达到最大限度

getline()函数的原型是

istream& getline ( istream & is , string & str , char delim );

用法:

int main()

{

string line;

cout << "Please input a line: " << endl;

while (getline(cin, line,'#'))

cout << line << endl;

return 0;

}

然后,那么当我们输入You are wonderful!#Mr. Ling 时,但是,有效的输入是 You are wonderful,#后面的内容并没有存入。程序运行的结果如下:

//输入:

You are wondreful!#LingKing

//输出:

You are wonderful!

在这里设置‘#’为终止符时,当再输入’\n’时也不会影响。
在#之前的内容都会照样输出。例如:
//含有’\n’的输入

Hello world!
You are wonderful!
Mr. Ling#wonderful!

//输出:

Hello world!
You are wonderful!
Mr. Ling

2.截取子串

s.substr(pos, n) :截取s中从pos开始(包括0)的n个字符的子串,并返回

s.substr(pos) : 截取s中从从pos开始(包括0)到末尾的所有字符的子串,并返回

3.替换子串

s.replace(pos, n, s1) : 用s1替换s中从pos开始(包括0)的n个字符的子串

4. 查找子串

s.find(s1) :查找s中第一次出现s1的位置,并返回(包括0)

s.rfind(s1) : 查找s中最后次出现s1的位置,并返回(包括0)

s.find_first_of(s1) : 查找在s1中任意一个字符在s中第一次出现的位置,并 返回(包括0)

s.find_last_of(s1) : 查找在s1中任意一个字符在s中最后一次出现的位置,并返回(包括0)

s.fin_first_not_of(s1) : 查找s中第一个不属于s1中的字符的位置,并返回(包括0)

s.fin_last_not_of(s1) : 查找s中最后一个不属于s1中的字符的位置,并返回(包括0)

C++和C中字符串中字母转换大小写的方法:
//截取自别人博客,忘记是谁的了,自闭…


转载:https://blog.csdn.net/unique_ZRF/article/details/100904761
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场