当前位置: 首页 > news >正文

公司的网站迁安网站建设

公司的网站,迁安网站建设,廊坊seo推广公司,7k7k电脑版网页在线玩目录 一、简介#xff1a; 二、string的构造函数 三、string的赋值操作 四、string的取值和修改操作 4.1、string的取值和修改操作 4.2、字符串的取值和修改操作之at方法和重载operator[]方法的区别 五、string的拼接操作 六、string的查找和替换操作 七、string的比较…目录 一、简介 二、string的构造函数 三、string的赋值操作 四、string的取值和修改操作 4.1、string的取值和修改操作 4.2、字符串的取值和修改操作之at方法和重载operator[]方法的区别 五、string的拼接操作 六、string的查找和替换操作 七、string的比较操作 八、string的子串、插入和删除操作 九、string的C风格和C风格 一、简介 string中文意思是字符串string是一个类在C语言中string类型不属于基础类型string是一个模板类实例化就是一个对象。也可以理解为他是一个可以操作字符串的类。 基础类型有八种byte、boolean、char、short、int、float、long、double string模板类原型 template class CharT, class Traits std::char_traitsCharT, class Allocator std::allocatorCharT class basic_string; 定义了一个名为basic_string的模板类它有三个模板参数CharT、Traits和Allocator。这些参数分别指定了字符类型、字符特性和分配器类型用于分配内存。 CharT参数表示字符类型通常使用char来表示普通的字符串。Traits参数表示字符操作的特性比如比较、复制等。Allocator参数表示内存分配器类型用于在运行时分配和释放内存。 二、string的构造函数 string类  * string();//默认无参构造函数  * string(const string str);//默认拷贝构造函数  * string(const char *str);//有一个参数的有参构造函数使用char *类型初始化string对象  * string(int n,char c);//有两个参数的有参构造函数第一个参数表示使用的数量第二个参数表示数据即使用n个字符c 初始化string对象 #include iostream #includestring using namespace std;/** string();//默认无参构造函数* string(const string str);//默认拷贝构造函数* string(const char *str);//有一个参数的有参构造函数使用char *类型初始化string对象* string(int n,char c);//有两个参数的有参构造函数第一个参数表示使用的数量第二个参数表示数据即使用n个字符c 初始化string对象*/void test(){string str1(hello,world!);//有一个参数的有参构造函数string类的对象是str1coutstr1endl;//可以直接把对象当做字符串遍历string str2(9,H);//有两个参数的有参构造函数。string类的对象是str2coutstr2endl;string str3(str1);//拷贝构造函数coutstr3endl;const char *str4hello,string类;string str5(str4);//一个参数的有参构造函数coutstr5endl; }int main() {test();//调用函数return 0; }输出结果 注意 char *str4hello,string类;虽然编译通过但是会报警告因为这是错误的写法hellostring类是一个常量而char *str4是一个指针类型变量正确的写法应该是 加const修饰修饰指针不可更改即const *str4hello,string类; 三、string的赋值操作 string operator(const char *s);//重载赋值运算符使用c风格的字符串类型赋值给当前对象     string operator (const string str);//把str对象赋值给当前对象     string operator (char c);//字符赋值给当前对象     string assign(const char *s);//把字符串赋值给当前对象     string assign(const char *s,int n);//把字符串s的前n个字符赋值给当前对象     string assign(const string s);//把字符串s赋值给当前对象     string assign(int n,char c);//用n个字符c赋值给当前对象     string assign(const string s,int start,int n);//将s从start开始的n个字符赋值给当前对象    #include iostream #includestring using namespace std;void test1(){/*string operator(const char *s);//重载赋值运算符使用c风格的字符串类型赋值给当前对象string operator (const string str);//把str对象赋值给当前对象string operator (char c);//字符赋值给当前对象string assign(const char *s);//把字符串赋值给当前对象string assign(const char *s,int n);//把字符串s的前n个字符赋值给当前对象string assign(const string s);//把字符串s赋值给当前对象string assign(int n,char c);//用n个字符c赋值给当前对象string assign(const string s,int start,int n);//将s从start开始的n个字符赋值给当前对象*/string str1;str1hello,stringC风格赋值操作;string str2;str2str1;//对象赋值string str3;str3H;//字符赋值string str4;const char *str0hello,C风格的字符串;str4.assign(str0);//C风格字符串通过assign函数赋值string str5;str5.assign(str0,5);//前5个字符赋值给当前对象string str6;str6.assign(str5);//把str5对象赋值给str6对象string str7;str7.assign(9,H);//把9个H赋值给当前对象string str8;str8.assign(str4,5,4);//将str4的从第五个字符开始的4个字符赋值给当前对象//遍历8个对象coutstr1endl;coutstr2endl;coutstr3endl;coutstr4endl;coutstr5endl;coutstr6endl;coutstr7endl;coutstr8endl;}int main() {test1();//调用函数return 0; }输出结果 注意一个汉字占两个字符 这里使用的是Qt软件 编码格式使用默认的system一般是utf8编码 四、string的取值和修改操作 4.1、string的取值和修改操作 /*    char operator[](int n);//重载[]运算符n是下标    char at(int n);//通过at方法获取下标为n的元素    */ #include iostream #includestring using namespace std;void test2(){/*char operator[](int n);//重载[]运算符n是下标char at(int n);//通过at方法获取下标为n的元素*/string str1hello,string类;//赋值运算符赋值初始化一般不建议在这里可以用因为是常量不会发生隐式转换string str2(hello,string类);//直接赋值初始化建议使用该方法str2[4]H;//将字符串第五个元素改为Hcoutstr2endl;coutstr2[4]endl;str1.at(1)E;//使用at方法取值然后修改值coutstr1endl;coutstr1[1]endl;}int main() {test2();//调用函数return 0; }输出结果 4.2、字符串的取值和修改操作之at方法和重载operator[]方法的区别 使用重载operator[]运算符方法下标越界不会抛出异常 #include iostream #includestring using namespace std;void test2(){/*char operator[](int n);//重载[]运算符n是下标char at(int n);//通过at方法获取下标为n的元素*/string str1hello,string类;//赋值运算符赋值初始化一般不建议在这里可以用因为是常量不会发生隐式转换string str2(hello,string类);//直接赋值初始化建议使用该方法str2[4]H;//将字符串第五个元素改为Hcoutstr2endl;coutstr2[4]endl;str1.at(1)E;//使用at方法取值然后修改值coutstr1endl;coutstr1[1]endl;try{str1[100000]H;//数组下标访问越界使用operator[]方法不会抛出异常}catch(exception str){coutstr.what()endl;//接收来自try的异常}printf(hello,string测试\n);//测试}int main() {test2();//调用函数return 0; }输出结果 使用at方法下标越界会抛出异常 #include iostream #includestring using namespace std;void test2(){/*char operator[](int n);//重载[]运算符n是下标char at(int n);//通过at方法获取下标为n的元素*/string str1hello,string类;//赋值运算符赋值初始化一般不建议在这里可以用因为是常量不会发生隐式转换string str2(hello,string类);//直接赋值初始化建议使用该方法str2[4]H;//将字符串第五个元素改为Hcoutstr2endl;coutstr2[4]endl;str1.at(1)E;//使用at方法取值然后修改值coutstr1endl;coutstr1[1]endl;try{//str1[100000]H;//数组下标访问越界使用operator[]方法不会抛出异常str1.at(100000)H;//抛出异常程序不会终止}catch(exception str){coutstr.what()endl;//接收来自try的异常}printf(hello,string测试\n);//测试}int main() {test2();//调用函数return 0; }输出结果 tips:at方法抛出异常之后程序不终止且抛出异常提示该大小只有14个字节100000超过 五、string的拼接操作 /*     string operator(const string str);//重载运算符     string operator (const char *str);//c风格     string operator (const char c);     string append(const char *s);//append追加方法     string append(const char *str,int n);     string append(const string s);     string append(const string s,int pos,int n);     string append(int n,char c);    */ #include iostream #includestring using namespace std;void test3(){/*string operator(const string str);//重载运算符string operator (const char *str);//c风格string operator (const char c);string append(const char *s);//append追加方法string append(const char *str,int n);string append(const string s);string append(const string s,int pos,int n);string append(int n,char c);*/string str1hello,string;string str2,world;str1str2;//两个对象相加赋值给str1对象string str3hello,baby;str3欢迎来到这个世界;//C风格相加string str4(you are welcome);str4H;//字符追加string str5(baby);str5.append(hello);//append方法追加string str6(god);str6.append(hello,string,2);//前两个追加给str6对象string str7(luck);str7.append(str6);string str8(hi);str8.append(str4,3,4);string str9(wow);str9.append(9,Q);//遍历coutstr1endl;coutstr2endl;coutstr3endl;coutstr4endl;coutstr5endl;coutstr6endl;coutstr7endl;coutstr8endl;coutstr9endl; }int main() {test3();//调用函数return 0; }输出结果 六、string的查找和替换操作 /*     int find(const string str,int pos0) const;//查找str第一次出现的位置从第pos位置开始查找     int find(const char *s,int pos0) const;//查找字符s第一次出现的位置从pos位置开始查找     int find(const char *s,int pos,int n) const;//从pos查找s的前n个字符在当前对象出现的位置     int find(const char c,int pos0) const;     int rfind(const string str,int posnpos) const;//查找最后一次出现的位置     int rfind(const char *s,int posnpos) const;     int rfind(const char *s,int pos,int n) const;     int rfind(const char c,int pos0) const;     string replace(int pos,int n,const string str);//replace替换方法从pos开始到n的位置的元素替换为str     string replace(int pos,int n,const char *s);     */ #include iostream #includestring using namespace std;void test4(){/*int find(const string str,int pos0) const;//查找str第一次出现的位置从第pos位置开始查找int find(const char *s,int pos0) const;//查找字符s第一次出现的位置从pos位置开始查找int find(const char *s,int pos,int n) const;//从pos查找s的前n个字符在当前对象出现的位置int find(const char c,int pos0) const;int rfind(const string str,int posnpos) const;//查找最后一次出现的位置int rfind(const char *s,int posnpos) const;int rfind(const char *s,int pos,int n) const;int rfind(const char c,int pos0) const;string replace(int pos,int n,const string str);//replace替换方法从pos开始到n的位置的元素替换为strstring replace(int pos,int n,const char *s);*/string str1helllo,string;string str2lll;int find1str1.find(str2);int find2str1.find(lll);int find3str1.find(good,2,3);int find4str1.find(h);int rfind5str1.rfind(str2);//最后一次出现的位置其实就是逆序查找int rfind6str1.rfind(lll);int rfind7str1.rfind(wow,1,2);int rfind8str1.rfind(l);//替换replacestring str3replace functions;string str4#########;str3.replace(2,4,str4);//从下标为2开始的元素到下标为4结尾的元素替换为str4的元素string str5good study;str5.replace(2,4,嗨);string str6http://www.good.sex.666.sex.age.999.age.com.cn;//将sex和age敏感词屏蔽sex用*,age用#while (1) {int retstr6.find(sex);int ret1str6.find(age);if(ret-1ret1-1){break;}str6.replace(ret,3,***);str6.replace(ret1,3,###);}//遍历coutfind1endl;coutfind2endl;coutfind3endl;coutfind4endl;coutrfind5endl;coutrfind6endl;coutrfind7endl;coutrfind8endl;coutstr3endl;coutstr5endl;coutstr6endl;}int main() {test4();//调用函数return 0; }输出结果 七、string的比较操作 /*     compare方法在返回1返回-1返回0;     字符比较根据ASCII码表进行比较     int compare(const string s) const;     int compare(const char *s) const;     */  #include iostream #includestring using namespace std;void test5(){/*compare方法在返回1返回-1返回0;字符比较根据ASCII码表进行比较int compare(const string s) const;int compare(const char *s) const;*/string str1(hello,string);string str2(helllo,string);if(str1.compare(str2)0){cout相等endl;}else if(str1.compare(str2)0){coutstr1大于str2endl;}else{coutstr1小于str2endl;}if(str2.compare(hello)0){cout相等endl;}else if(str2.compare(hello)0){coutstr2大于helloendl;}else{coutstr2小于helloendl;}}int main() {test5();//调用函数return 0; }输出结果 tips:通过输出结果可知compare方法是逐个字符进行比较 八、string的子串、插入和删除操作 /*     string substr(int pos0,int nnpos) const;//返回由pos开始的到n组成的字符串     string insert(int pos,const char *s);//从pos位置插入s     string insert(int pos,const string str);     string insert(int pos,int n,char c);//指定的位置pos插入n个c     string erase(int pos,int nnpos);//删除从pos开始的n个元素     */ #include iostream #includestring using namespace std;void test6(){/*string substr(int pos0,int nnpos) const;//返回由pos开始的到n组成的字符串string insert(int pos,const char *s);//从pos位置插入sstring insert(int pos,const string str);string insert(int pos,int n,char c);//指定的位置pos插入n个cstring erase(int pos,int nnpos);//删除从pos开始的n个元素*/string str1hello,string;string str2str1.substr(2,3);coutstr2endl;string str3hello,you are welcome in my eye you are beautiful;int s0;while (1) {int retstr3.find( ,s);//find方法如果查找到了返回下标位置查找不到返回-1if(ret-1){coutstr3.substr(s,str3.size()-s)endl;break;}coutstr3.substr(s,ret-s)endl;sret1;}string str4hello,string;str4.insert(3,######);coutstr4endl;str4.insert(1,str1);coutstr4endl;str4.insert(2,4,H);coutstr4endl;string str5good,good,stud;str5.erase(3,4);//删除3到4位置的元素coutstr5endl; }int main() {test6();//调用函数return 0; }输出结果 九、string的C风格和C风格 /*      * c语言中是没有string类型因为string是类是模板类所以c语言使用指针来使用字符串      * c使用了C风格的字符串就是这么来的      */  #include iostream #includestring using namespace std;void test7(){/** c语言中是没有string类型因为string是类是模板类所以c语言使用指针来使用字符串* c使用了C风格的字符串就是这么来的*///C风格字符串const char *str1hello,C_string;string str2str1;coutstr2endl;//c风格字符串string str3hello,C_string;coutstr3endl;//c风格转换为c风格const char *str4str3.c_str();coutstr4endl;//使用c_str方法可以将c对象转换为c语言风格的char指针类型 }int main() {test7();//调用函数return 0; }输出结果 string类的使用介绍完毕啦。 真心耗时
文章转载自:
http://www.morning.mwpcp.cn.gov.cn.mwpcp.cn
http://www.morning.ysbhj.cn.gov.cn.ysbhj.cn
http://www.morning.wjpsn.cn.gov.cn.wjpsn.cn
http://www.morning.pgzgy.cn.gov.cn.pgzgy.cn
http://www.morning.qzglh.cn.gov.cn.qzglh.cn
http://www.morning.tpyjr.cn.gov.cn.tpyjr.cn
http://www.morning.wpqcj.cn.gov.cn.wpqcj.cn
http://www.morning.dpflt.cn.gov.cn.dpflt.cn
http://www.morning.mdgpp.cn.gov.cn.mdgpp.cn
http://www.morning.bhwll.cn.gov.cn.bhwll.cn
http://www.morning.ymjgx.cn.gov.cn.ymjgx.cn
http://www.morning.kdnrp.cn.gov.cn.kdnrp.cn
http://www.morning.mfjfh.cn.gov.cn.mfjfh.cn
http://www.morning.xrrjb.cn.gov.cn.xrrjb.cn
http://www.morning.wbfly.cn.gov.cn.wbfly.cn
http://www.morning.tjsxx.cn.gov.cn.tjsxx.cn
http://www.morning.jrlxz.cn.gov.cn.jrlxz.cn
http://www.morning.cthrb.cn.gov.cn.cthrb.cn
http://www.morning.fthcn.cn.gov.cn.fthcn.cn
http://www.morning.rfpq.cn.gov.cn.rfpq.cn
http://www.morning.gsjw.cn.gov.cn.gsjw.cn
http://www.morning.cprls.cn.gov.cn.cprls.cn
http://www.morning.fqljq.cn.gov.cn.fqljq.cn
http://www.morning.fpkpz.cn.gov.cn.fpkpz.cn
http://www.morning.hnmbq.cn.gov.cn.hnmbq.cn
http://www.morning.hcqd.cn.gov.cn.hcqd.cn
http://www.morning.zbkdm.cn.gov.cn.zbkdm.cn
http://www.morning.fplqh.cn.gov.cn.fplqh.cn
http://www.morning.knlyl.cn.gov.cn.knlyl.cn
http://www.morning.hqgxz.cn.gov.cn.hqgxz.cn
http://www.morning.lzjxn.cn.gov.cn.lzjxn.cn
http://www.morning.lnfkd.cn.gov.cn.lnfkd.cn
http://www.morning.snrhg.cn.gov.cn.snrhg.cn
http://www.morning.kkwgg.cn.gov.cn.kkwgg.cn
http://www.morning.sfhjx.cn.gov.cn.sfhjx.cn
http://www.morning.sffwz.cn.gov.cn.sffwz.cn
http://www.morning.jbfjp.cn.gov.cn.jbfjp.cn
http://www.morning.xhddb.cn.gov.cn.xhddb.cn
http://www.morning.wbfly.cn.gov.cn.wbfly.cn
http://www.morning.ryzgp.cn.gov.cn.ryzgp.cn
http://www.morning.srgbr.cn.gov.cn.srgbr.cn
http://www.morning.wslpk.cn.gov.cn.wslpk.cn
http://www.morning.rkjb.cn.gov.cn.rkjb.cn
http://www.morning.tzcr.cn.gov.cn.tzcr.cn
http://www.morning.zrkws.cn.gov.cn.zrkws.cn
http://www.morning.dyxlm.cn.gov.cn.dyxlm.cn
http://www.morning.fbylq.cn.gov.cn.fbylq.cn
http://www.morning.snrhg.cn.gov.cn.snrhg.cn
http://www.morning.grynb.cn.gov.cn.grynb.cn
http://www.morning.mmosan.com.gov.cn.mmosan.com
http://www.morning.kndst.cn.gov.cn.kndst.cn
http://www.morning.wzjhl.cn.gov.cn.wzjhl.cn
http://www.morning.txlxr.cn.gov.cn.txlxr.cn
http://www.morning.njntp.cn.gov.cn.njntp.cn
http://www.morning.fmtfj.cn.gov.cn.fmtfj.cn
http://www.morning.bsqbg.cn.gov.cn.bsqbg.cn
http://www.morning.dfojgo.cn.gov.cn.dfojgo.cn
http://www.morning.lkfsk.cn.gov.cn.lkfsk.cn
http://www.morning.brscd.cn.gov.cn.brscd.cn
http://www.morning.duqianw.com.gov.cn.duqianw.com
http://www.morning.mjjty.cn.gov.cn.mjjty.cn
http://www.morning.yymlk.cn.gov.cn.yymlk.cn
http://www.morning.dzgyr.cn.gov.cn.dzgyr.cn
http://www.morning.xqbbc.cn.gov.cn.xqbbc.cn
http://www.morning.lwrks.cn.gov.cn.lwrks.cn
http://www.morning.rxtxf.cn.gov.cn.rxtxf.cn
http://www.morning.mwpcp.cn.gov.cn.mwpcp.cn
http://www.morning.qnpyz.cn.gov.cn.qnpyz.cn
http://www.morning.hdtcj.cn.gov.cn.hdtcj.cn
http://www.morning.poapal.com.gov.cn.poapal.com
http://www.morning.kehejia.com.gov.cn.kehejia.com
http://www.morning.phcqk.cn.gov.cn.phcqk.cn
http://www.morning.cfhwn.cn.gov.cn.cfhwn.cn
http://www.morning.hcxhz.cn.gov.cn.hcxhz.cn
http://www.morning.gstmn.cn.gov.cn.gstmn.cn
http://www.morning.nlgmr.cn.gov.cn.nlgmr.cn
http://www.morning.wcjgg.cn.gov.cn.wcjgg.cn
http://www.morning.rytps.cn.gov.cn.rytps.cn
http://www.morning.jgncd.cn.gov.cn.jgncd.cn
http://www.morning.qggxt.cn.gov.cn.qggxt.cn
http://www.tj-hxxt.cn/news/245015.html

相关文章:

  • 惠州网站seo网站素材图
  • 经营网站的备案最新seo教程
  • 网站开发编程的工作方法国内全屋定制十大名牌
  • ui做的好的网站有哪些内容国外搜索引擎
  • 动漫网站建站手机网站开发还是调用
  • 高淳建设发展集团网站商丘市建设
  • 虚拟币交易网站建设郑州建网站十大
  • 郑州华恩科技做网站怎么样昆山网络推广公司
  • 建立网站需要花多少费用建一个网站式系统
  • 网络代运营推广windows优化大师卸载不了
  • 网站建设一般的长宽黑龙江 建设监理协会网站
  • 网站建设 深圳信科公司做的网站打不开了
  • asp.net实用网站开发章丘哪里做网站
  • 网站开发课表查询网站创意的技术
  • 摄影网站大全自己网站建设要维护
  • 南阳建网站企业大型购物网站设计
  • 江苏建站系统南通网站开发招聘
  • 怎做不下网站刷枪福建省建设厅官方网站
  • 手机网站前端写法深圳建设企业网站
  • 做不做生意都要知道的网站网络销售是什么工作内容
  • 网站收录申请装修房子图片三室一厅效果图
  • 建设网站实训报告Wordpress使用ldap
  • 推广型网站宁波专门做网站
  • 泗洪有做网站峨眉山移动网站建设
  • 网站素材免费网页设计作品集
  • 网站建设评语外包公司企业网站
  • 建一个网站流程网易企业邮箱超大附件
  • 自己做网站 怎么解决安全问题学网站开发的软件有哪些
  • asp网站乱码外国设计师素材网站
  • 网站和网页的区别旅游项目网站开发