您的位置:首页 > 其它

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

2012-11-14 18:57 351 查看
#include <cstdio>
#include <iostream>

using namespace std;

int main()
{
/*
int atoi(const char str[])
功能:将字符串str 转换成 一个整数值。 如果成功则返回相应的数值,失败返回 0;
该函数仅仅处理整数,会用前要包含 cstdlib。 于此类似的还有 atof 和 atol
分别处理浮点数和长整数
*/
char s1[20] = "1234";
char s2[20] = "789sdf"; // 注意可以返回 789
char s3[20] = "sdf789";
int i = atoi(s1);
int j = atoi(s2);
int k = atoi(s3);
cout << i << " "<< j << " "<< k << endl;
//输出 1234 789 0

/*
char * strstr(const char s1[], const char s2[])
功能:如果字符串是s1 包含要查找的字串s2 ,则返回s2中第一次出现的位置(地址)
否则返回值为NULL
char * strchr(char* _Str,int _Ch)
  头文件:#include <string.h>
  功能:查找字符串s中首次出现字符c的位置
  说明:返回首次出现c的位置的指针,如果s中不存在c则返回NULL。

*/
char str[80] = "I love China & you !", substr[] = "in";
cout << strstr(str, substr) << endl;
//输出 ina & you !

/*
cin.getline(字符指针,字符个数N,结束符)
此函数是按行读取;
  功能是:一次读取多个字符(包括空白字符),直到读满N-1个,
或者遇到指定的结束符为止(默认的是以'\n'结束)。
char s[40];
cin.getline(s,len); //读取包括空白字符的一行数据

cin.get(ch) //可以读取空白字符
cin >> ch //不能读取空白字符

string name;
getline(cin, name); //可以读取包括空白字符的一行
cin >> name //读取到空白字符就结束

string 对象可以直接比较大小 也可以和字符数组混合运算
string name1 = "john";
char name2[10] = "mark";
cout << (name1 > neme2); //这样写也是合法的
*/

/*
string address; //定义空对象
string name("Li si"); //直接初始化
string person(name); //其中name 可以是 string , 也可以是 字符数组
string set1(set2, 5); //定义一个名字为set1 的对象,并用字符数组 set2 的前5个字符初始化,
//注意set2 必须是一个字符数组,不能使string
string Name(fullName, 0, 7); //用fullName 对象的 子串进行初始化,该子串长度为7,从0号位置开始

string oneString;
oneString.empty(); //判空
oneString.erase(x,n); //删除oneString对象中从位置 x 开始的 n 个字符
oneString.find(str); 从oneString 对象中的左边开始查找 str 第一次出现的位置。
//其中 str 可以是一个string 对象、字符数组或者单个字符
oneString.insert(x,str); //将str 的内容插入到 oneString 对象中,开始位置为 x
// str 可以是一个string 对象 或者 字符数组
oneString.substr(x, n); // 返回 oneString 对象中,开始于 x 位置、长度为 n 的一个子串
oneString.swap(str); //将oneString 和str 的内容交换,其中 str 是一个字符数组
*/
while(1);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: