C++ STL入门 -- string

字符串是程序中经常要表达和处理的数据,我们通常是采用字符数组或字符指针来表示字符串。 STL 为我们提供了另一种使用起来更为便捷的字符串的表达方式: string。 string 类的定义在头文件中。string 类其实可以看作是一个字符的 vector, vector 上的各种操作都可以适用于 string,另外, string 类对象还支持字符串的拼合、转换等操作。下面先来看一个简单的例子:

#include <iostream>
#include <string>
using namespace std;
int main(){
	string s = "Hello! ", name;
	cin >> name;
	s += name;
	s += '!';
	cout << s << endl;
	return 0;
}

常用函数及其说明

  • isalnum(c) 如果c是字母或数字,返回 true

  • isalpha(c) 如果c是字母,返回true

  • iscntrl(c) c是控制符,返回true

  • isdigit(c) 如果c是数字,返回true

  • isgraph(c) 如果c不是空格,则可打印,,则为true

  • islower(c)如果c是小写字母,则为true

  • isupper(c) 如果c是大写字符,则为true

  • isprint(c)如果c是可打印的字符,则为true

  • ispunct(c) 如果c是标点符号,则为true

  • isspace(c) 如果c是空白字符,则为true

  • isxdigit(c)如果c是十六进制数,则为true

  • tolower(c) 如果c是大写字符,则返回其小写字母,否则直接返回c

  • toupper(c) 跟tolower相反

  • s.insert( it , p ) 把字符串p插入到it的位置

  • s.insert(p,n,t) 迭代器p元素之前插入n个t的副本

  • s.insert(p,b,e); 迭代器p元素之前插入迭代器b到e之间的所有元素

  • s.insert(p,s2,poe2,len) 在下标p之前插入s2下标从poe2开始长度为len的元素

  • s.insert(pos,cp,len) 下标pos之前插入cp数组的前len个元素。

  • s.assign(b,e) 用迭代器b到e范围内的元素替换s

  • s.assign(n,t) 用n个t的副本替换s

  • a.assign(s1,pos2,len)从s1的下标pos2开始连续替换len个。

  • s.replace ( 3 , 3 , " good " ) 从第三个起连续三个替换为good

  • s.substr(i,j) 截取s串中从i到j的子串

  • string::npos 判断字符串是否结束

  • s.erase( 3 )||s.erase ( 0 , 4 ) 删除第四个元素或第一到第五个元素

  • s.find ( " cat " ) 超找第一个出现的字符串”cat“,返回其下标值,查不到返回 4294967295,也可查找字符;

  • s.append(args) 将args接到s的后面

  • s.compare ( " good " ) s与”good“比较相等返回0,比"good"大返回1,小则返回-1;

  • reverse ( s.begin(), s.end () ) 反向排序函数,即字符串反转函数

原创文章 15 获赞 3 访问量 4105

猜你喜欢

转载自blog.csdn.net/qq_40791129/article/details/105447993