做网站的难题,wordpress中英文版如何,wordpress 页面添加js,网站系统中备案申请表1. string基本概念 1.1 本质#xff1a; string是C风格的字符串#xff0c;而string本质上是一个类 string和char * 区别#xff1a; char * 是一个指针 string是一个类#xff0c;类内部封装了char*#xff0c;管理这个字符串#xff0c;是一个char*型的容器。 1.2 特点… 1. string基本概念 1.1 本质 string是C风格的字符串而string本质上是一个类 string和char * 区别 char * 是一个指针 string是一个类类内部封装了char*管理这个字符串是一个char*型的容器。 1.2 特点 string 类内部封装了很多成员方法 例如查找find拷贝copy删除delete 替换replace插入insert string管理char*所分配的内存不用担心复制越界和取值越界等由类内部进行负责 2. string构造函数 构造函数原型 string(); //创建一个空的字符串 例如: string str; string(const char* s); //使用字符串s初始化 string(const string str); //使用一个string对象初始化另一个string对象 string(int n, char c); //使用n个字符c初始化 示例 string_main.cpp #include iostream
#include string
using namespace std;//string的构造函数void test() {string s1; //创建空字符串调用无参构造函数cout str1 s1 endl;const char* str hello world;string s2(str); //把c_string转换成了stringcout s2 s2 endl;string s3(s2); //调用拷贝构造函数cout s3 s3 endl;string s4(10, a);cout s4 s4 endl;
}int main()
{test();return 0;
}3. string赋值操作 功能描述 给string字符串进行赋值 赋值的函数原型 string operator(const char* s); //char*类型字符串 赋值给当前的字符串
string operator(const string s); //把字符串s赋给当前的字符串
string operator(char c); //字符赋值给当前的字符串
string assign(const char *s); //把字符串s赋给当前的字符串
string assign(const char *s, int n); //把字符串s的前n个字符赋给当前的字符串
string assign(const string s); //把字符串s赋给当前字符串
string assign(int n, char c) 总结 string的赋值方式很多 operator 这种方式是比较实用的 实例 string_main2.cpp #include iostream
#include string
using namespace std;//string赋值操作void test() {string str1;str1 hello world;cout str1 str1 endl;string str2;str2 str1;cout str2 str2 endl;string str3;str3 a;cout str3 str3 endl;string str4;str4.assign(hello C);cout str4 str4 endl;string str5;str5.assign(hello C, 5);cout str5 str5 endl;string str6;str6.assign(str5);cout str6 str6 endl;string str7;str7.assign(10, w);cout str7 str7 endl;
}int main()
{test();return 0;
}4. string字符串拼接 功能描述 实现在字符串末尾拼接字符串 函数原型 string operator(const char* str); //重载操作符
string operator(const char c); //重载操作符
string operator(const string str); //重载操作符
string append(const char *s); //把字符串s连接到当前字符串结尾
string append(const char *s, int n); //把字符串s的前n个字符连接到当前字符串结尾
string append(const string s); //同operator(const string str)
string append(const string s, int pos, int n); //字符串s中从pos开始的n个字符连接到字符串结尾示例 string_main3.cpp #include iostream
#include stringusing namespace std;//string字符串的拼接void test01() {string str1 我;str1 爱玩游戏;cout str1 str1 endl;str1 :;cout str1 str1 endl;string str2 LOL DNF;str1 str2;cout str1 str1 endl;string str3 I;str3.append( love );cout str3 str3 endl;str3.append(game abcde, 4);// I love gamecout str3 str3 endl;//str3.append(str2);//str3.append(str2, 0, 3); //只截取到LOLstr3.append(str2,4,3); // 只截取 DNF 参数2 从哪个位置开始截取参数3 截取字符个数// I love game LOL DNFcout str3 str3 endl;
}int main()
{test01();return 0;
}5. string查找和替换 功能描述 查找查找指定字符串是否存在 替换在指定的位置替换字符串 函数原型 int find(const string str, int pos 0) const; //查找str第一次出现位置,从pos开始查找
int find(const char* s, int pos 0) const; //查找s第一次出现位置,从pos开始查找
int find(const char* s, int pos, int n) const; //从pos位置查找s的前n个字符第一次位置
int find(const char c, int pos 0) const; //查找字符c第一次出现位置
int rfind(const string str, int pos npos) const; //查找str最后一次位置,从pos开始查找
int rfind(const char* s, int pos npos) const; //查找s最后一次出现位置,从pos开始查找
int rfind(const char* s, int pos, int n) const; //从pos查找s的前n个字符最后一次位置
int rfind(const char c, int pos 0) const; //查找字符c最后一次出现位置
string replace(int pos, int n, const string str); //替换从pos开始n个字符为字符串str
string replace(int pos, int n,const char* s); //替换从pos开始的n个字符为字符串s总结 find查找是从左往后rfind从右往左 find找到字符串后返回查找的第一个字符位置找不到返回-1 replace在替换时要指定从哪个位置起多少个字符替换成什么样的字符串 示例 string4_main.cpp #include iostream
#include stringusing namespace std;//查找
void test() {string str1 abcdefg;int pos str1.find(de);if (pos -1) {cout 未找到字符串 endl;}else {cout 找到字符串pos pos endl;}//rfind和find//rfind从右往左查找find从左往右查找pos str1.rfind(de);cout pos pos endl;
}//替换
void test02() {string str2 abcdefg;//从1号位置起 3个字符替换为“1111”str2.replace(1,3,1111);cout str2 str2 endl;
}//string查找和替换
int main()
{test();test02();return 0;
}6. string字符串比较 功能描述 字符串之间的比较 比较方式 字符串比较是按字符的ASCII码进行对比 返回 0 返回 1 返回 -1 函数原型 int compare(const string s) const; //与字符串s比较
int compare(const char *s) const; //与字符串s比较总结字符串对比主要是用于比较两个字符串是否相等判断谁大谁小的意义并不是很大 示例 string_main5.cpp #includeiostream
using namespace std;//字符串比较void test01()
{string str1 hello;string str2 xello;if (str1.compare(str2) 0){cout str1 等于 str2 endl;}else if (str1.compare(str2) 0){cout str1 大于 str2 endl;}else{cout str1 小于 str2 endl;}}int main() {test01();system(pause);return 0;
}7. string字符存取 string中单个字符存取方式有两种 char operator[](int n); //通过[]方式取字符
char at(int n); //通过at方法获取字符总结string字符串中单个字符存取有两种方式利用 [ ] 或 at 示例 string_main6.cpp #includeiostream
using namespace std;
#include string//string 字符存取void test01()
{string str hello;//cout str str endl;//1、通过 []访问单个字符for (int i 0; i str.size(); i){cout str[i] ;}cout endl;//2、通过at方式访问单个字符for (int i 0; i str.size(); i){cout str.at(i) ;}cout endl;//修改单个字符str[0] x;// xellocout str str endl;str.at(1) x;// xxllocout str str endl;
}int main() {test01();system(pause);return 0;
}8. string插入和删除 功能描述 对string字符串进行插入和删除字符操作 函数原型 string insert(int pos, const char* s); //插入字符串
string insert(int pos, const string str); //插入字符串
string insert(int pos, int n, char c); //在指定位置插入n个字符c
string erase(int pos, int n npos); //删除从Pos开始的n个字符 总结插入和删除的起始下标都是从0开始 示例 string_main7.cpp #includeiostream
using namespace std;
#include string//字符串 插入和删除
void test01()
{string str hello;//插入str.insert(1, 111);//h111ellocout str str endl;//删除str.erase(1, 3);cout str str endl;
}int main() {test01();system(pause);return 0;
}9. string子串 功能描述 从字符串中获取想要的子串 函数原型 string substr(int pos 0, int n npos) const; //返回由pos开始的n个字符组成的字符串 总结灵活的运用求子串功能可以在实际开发中获取有效的信息 示例 string_main8.cpp #includeiostream
using namespace std;
#include string//string求子串void test01()
{string str abcdef;string subStr str.substr(1, 3);cout subStr subStr endl;
}//实用操作
void test02()
{string email zhangsansina.com;//从邮件地址中 获取 用户名信息int pos email.find(); // 8 cout pos endl;string usrName email.substr(0, pos);cout usrName endl;
}int main() {//test01();test02();system(pause);return 0;
}