复习一下c++ std::string 的使用(转)

转载 2012年03月29日 14:09:24

发现string 的使用一直有些误解,主要c++在windows编程和unix编程时使用的string 有些不太一样。 最经发现原来std::string 已经非常完善了。 还是写点东西复习一下

构造函数和析构函数如下:
a)    string s;  //生成一个空字符串s
b)    string s(str) //拷贝构造函数 生成str的复制品
c)    string s(str,stridx) //将字符串str内“始于位置stridx”的部分当作字符串的初值
d)    string s(str,stridx,strlen) //将字符串str内“始于stridx且长度顶多strlen”的部分作为字符串的初值
e)    string s(cstr) //将C字符串作为s的初值
f)    string s(chars,chars_len) //将C字符串前chars_len个字符作为字符串s的初值。
g)    string s(num,c) //生成一个字符串,包含num个c字符
h)    string s(beg,end) //以区间beg;end(不包含end)内的字符作为字符串s的初值

2.字符串操作函数
a) =,assign()   //赋以新值
b) swap()   //交换两个字符串的内容
c) +=,append(),push_back() //在尾部添加字符
d) insert() //插入字符
e) erase() //删除字符
f) clear() //删除全部字符
g) replace() //替换字符
h) + //串联字符串
i) ==,!=,<,<=,>,>=,compare()  //比较字符串
j) size(),length()  //返回字符数量
k) max_size() //返回字符的可能最大个数
l) empty()  //判断字符串是否为空
m) capacity() //返回重新分配之前的字符容量
n) reserve() //保留一定量内存以容纳一定数量的字符
o) [ ], at() //存取单一字符
p) >>,getline() //从stream读取某值
q) <<  //将谋值写入stream
r) copy() //将某值赋值为一个C_string
s) c_str() //将内容以C_string返回
t) data() //将内容以字符数组形式返回
u) substr() //返回某个子字符串
v)查找函数
w)begin() end() //提供类似STL的迭代器支持
x) rbegin() rend() //逆向迭代器
y) get_allocator() //返回配置器

其实像什么+ 啊 神马的还是很好用的,其实比较麻烦的就是想要多种类型串联的时候就比较麻烦, 毕竟没有想c# java 那样的.string 可以使用。下

c++ utf8与std::string字符编码转换

转自:http://blog.csdn.net/henren555/article/details/9295907 1.  utf8转std::string 转换过程:先将utf8转双字节...
  • zhangxueyang1
  • zhangxueyang1
  • 2017年01月07日 21:22
  • 1117

std::string 转 byte[]

#include "stdafx.h" #include  #include  int _tmain(int argc, _TCHAR* argv[]) { std::string te...
  • lys07962000
  • lys07962000
  • 2016年11月10日 18:56
  • 958

C#DLL托管c++ (CLI) String^ 到 std::string 的相互转化

当使用C++/CLI包装C++本地代码时,常常需要将System::String转换为std::string或者char*以调用native C++函数。.net环境中的字符串是unicode的,占2...
  • qq_35040828
  • qq_35040828
  • 2017年10月25日 16:40
  • 298

【语言-C++】std:string 转换代码

stringConversion.h #pragma once #include using namespace std; #define ZERO_FLOAT 0.000002 n...
  • chenlu5201314
  • chenlu5201314
  • 2017年03月01日 14:29
  • 303

将std::string当字节流使

string是C++标准定义的字符串类,它不但支持文本,而且支持二进制字节流。给一个string变量赋值有多种方法: 1) 拷贝构造函数 2) 等号赋值函数 3) append成员函数 4) ...
  • Aquester
  • Aquester
  • 2014年05月02日 10:41
  • 1131

【c++】istream 转为 string

一直局限于使用cout、cin,在平时的开发中已经足够了。突然遇到istream,还真不知所措,在使用boost中,各种stream流被虐,今天一个需求就是把istream转为string,如下:st...
  • Qyee16
  • Qyee16
  • 2016年04月30日 17:33
  • 2344

C++ - string类型转换int类型

string类型转换int类型本文地址: http://blog.csdn.net/caroline_wendyC语言转换形式:... std::string str; int i = atoi(st...
  • u012515223
  • u012515223
  • 2014年06月08日 20:16
  • 38090

实战c++中的string系列--std::string与MFC中CString的转换

搞过MFC的人都知道cstring,给我们提供了很多便利的方法。CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。不管怎样,使用...
  • wangshubo1989
  • wangshubo1989
  • 2015年12月12日 12:36
  • 6239

std::string 转BSTR的方法

可以采用_com_util::ConvertStringToBSTR(str.c_str()); 这种方式进行从string(const char * )到BSTR的转换这个函数_com_util::...
  • nscboy
  • nscboy
  • 2010年05月13日 13:01
  • 4572

托管c++ (CLI) String^ 到 std::string 的相互转化

#include "stdafx.h" #include #include #include using namespace msclr::interop; using namespace S...
  • spiritring
  • spiritring
  • 2014年05月04日 14:26
  • 8703
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:复习一下c++ std::string 的使用(转)
举报原因:
原因补充:

(最多只允许输入30个字)