std::string 使用

发布时间:2020-07-13 06:20:19 作者:fengyuzaitu
来源:网络 阅读:1420

1 char[]字符串数组赋值string字符串
char szBuffer[1024] = {"fengyuzaitu00051cto"};
std::string strBuffer(szBuffer);
注意:strBuffer只是获取到fengyuzaitu这一段,产生了截断


正确:
char szBuffer[1024] = {"fengyuzaitu00051cto"};
std::string strBuffer(szBuffer,  1024);
注意:完整的获取到整一个字符串fengyuzaitu00051cto
情景:在RabbitMQ接收数据的时候,返回字符串数组,赋值给
string字符串类型,就需要指定字符串数组长度,否则可能会读取多余的带外数据,
多余的带外数据是乱码

2 char[]字符串数组追加到string字符串
char szBuffer[1024] = {"fengyuzaitu00051cto"};
std::string strBuffer = "Welcome";
strBuffer += szBuffer;
注意:strBuffer只是获取到fengyuzaitu这一段,产生了截断

正确:
char szBuffer[1024] = {"fengyuzaitu00051cto"};
std::string strBuffer = "Welcome";
strBuffer.append(szBuffer, 1024);

assgin函数跟append函数的使用方法一样

3
反向查询字符串,返回第一次遇到的字符串所在的位置  rfind
取子字符串 substr


4 append函数使用说明

常用的函数原型:
  basic_string &append( const basic_string &str );
  basic_string &append( const char *str );
  basic_string &append( const basic_string &str, size_type index, size_type len );
  basic_string &append( const char *str, size_type num );
  basic_string &append( size_type num, char ch );
  basic_string &append( input_iterator start, input_iterator end );

append() 函数可以完成以下工作:
在字符串的末尾添加str,
在字符串的末尾添加str的子串,子串以index索引开始,长度为len
在字符串的末尾添加str中的num个字符,
在字符串的末尾添加num个字符ch,
在字符串的末尾添加以迭代器start和end表示的字符序列.

append函数常用的三个功能:
直接添加另一个完整的字符串:如str1.append(str2);
添加另一个字符串的某一段子串:如str1.append(str2, 11, 7);
添加几个相同的字符:如str1.append(5, ‘.’);注意,个数在前字符在后.上面的代码意思为在str1后面添加5个"."

注意:
 append函数没有提供一个basic_string &append( const basic_string &str, size_type num )的函数,切记!


推荐阅读:
  1. Cookbook系列之Cpp:字符串与文本
  2. STL标准库中string,vector,list使用的异同点

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

string strin

上一篇:swoole reload 代码热更新 example

下一篇:死磕 java集合之HashSet源码分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》