字符串处理中常用函数方法

 1 #include <cstdio>
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()
 7 {
 8 /*
 9 int atoi(const char str[])
10 功能:将字符串str 转换成 一个整数值。 如果成功则返回相应的数值,失败返回 0;
11 该函数仅仅处理整数,会用前要包含 cstdlib。 于此类似的还有 atof 和 atol
12 分别处理浮点数和长整数
13 */
14 char s1[20] = "1234";
15 char s2[20] = "789sdf"; // 注意可以返回 789
16 char s3[20] = "sdf789";
17 int i = atoi(s1);
18 int j = atoi(s2);
19 int k = atoi(s3);
20 cout << i << " "<< j << " "<< k << endl;
21 //输出 1234 789 0
22 
23 
24 /*
25 char * strstr(const char s1[], const char s2[])
26 功能:如果字符串是s1 包含要查找的字串s2 ,则返回s2中第一次出现的位置(地址)
27 否则返回值为NULL
28 char * strchr(char* _Str,int _Ch)
29   头文件:#include <string.h>
30   功能:查找字符串s中首次出现字符c的位置
31   说明:返回首次出现c的位置的指针,如果s中不存在c则返回NULL。
32 
33 */
34 char str[80] = "I love China & you !", substr[] = "in";
35 cout << strstr(str, substr) << endl;
36 //输出 ina & you !
37 
38 /*
39 cin.getline(字符指针,字符个数N,结束符)
40 此函数是按行读取;
41   功能是:一次读取多个字符(包括空白字符),直到读满N-1个,
42 或者遇到指定的结束符为止(默认的是以'\n'结束)。
43 char s[40];
44 cin.getline(s,len); //读取包括空白字符的一行数据
45 
46 cin.get(ch) //可以读取空白字符
47 cin >> ch //不能读取空白字符
48 
49 string name;
50 getline(cin, name); //可以读取包括空白字符的一行
51 cin >> name //读取到空白字符就结束
52 
53 string 对象可以直接比较大小 也可以和字符数组混合运算
54 string name1 = "john";
55 char name2[10] = "mark";
56 cout << (name1 > neme2); //这样写也是合法的
57 */
58 
59 /*
60 string address; //定义空对象
61 string name("Li si"); //直接初始化
62 string person(name); //其中name 可以是 string , 也可以是 字符数组
63 string set1(set2, 5); //定义一个名字为set1 的对象,并用字符数组 set2 的前5个字符初始化,
64 //注意set2 必须是一个字符数组,不能使string
65 string Name(fullName, 0, 7); //用fullName 对象的 子串进行初始化,该子串长度为7,从0号位置开始
66 
67 string oneString;
68 oneString.empty(); //判空
69 oneString.erase(x,n); //删除oneString对象中从位置 x 开始的 n 个字符
70 oneString.find(str); 从oneString 对象中的左边开始查找 str 第一次出现的位置。
71 //其中 str 可以是一个string 对象、字符数组或者单个字符
72 oneString.insert(x,str); //将str 的内容插入到 oneString 对象中,开始位置为 x
73 // str 可以是一个string 对象 或者 字符数组
74 oneString.substr(x, n); // 返回 oneString 对象中,开始于 x 位置、长度为 n 的一个子串
75 oneString.swap(str); //将oneString 和str 的内容交换,其中 str 是一个字符数组
76 */
77 while(1);
78 }
功不成,身已退
原文地址:https://www.cnblogs.com/dongsheng/p/2770416.html