当前位置:  编程技术>c/c++/嵌入式

c++中的string常用函数用法总结

    来源: 互联网  发布时间:2014-10-20

    本文导语:  标准c++中string类函数介绍注意不是CString之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大...

标准c++中string类函数介绍

注意不是CString
之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。

好了,进入正题………
首先,为了在我们的程序中使用string类型,我们必须包含头文件 。

如下:
#include //注意这里不是string.h string.h是C字符串头文件
#include
using namespace std;

1.声明一个C++字符串
声明一个字符串变量很简单:
string Str;
这样我们就声明了一个字符串变量,但既然是一个类,就有构造函数和析构函数。上面的声明没有传入参数,所以就直接使用了string的默认的构造函数,这个函数所作的就是把Str初始化为一个空字符串。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的初值
i)      s.~string() //销毁所有字符,释放内存
都很简单,我就不解释了。

2.字符串操作函数
这里是C++字符串的重点,我先把各种操作函数罗列出来,不喜欢把所有函数都看完的人可以在这里找自己喜欢的函数,再到后面看他的详细解释。
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) ,>=,


    
 
 

您可能感兴趣的文章:

  • C++ Bitsets 成员 to_string():返回bitset的字符串表示
  • 寻求c++ string 源代码
  • C++ Strings(字符串) 成员 get_allocator():返回配置器
  • C++ String Toolkit Library
  • C++ Strings(字符串) 成员 at():按给定索引值返回字符
  • c++ int转string方法
  • C++ Strings(字符串) 成员 empty():如果字符串为空,返回真
  • c++ 将buffer转换成raw string的函数
  • C++ Strings(字符串) 成员 begin():返回一个迭代器,指向第一个字符
  • uClinux下如何才能支持标准C++类库,如(string, list)等模板库
  • C++ Strings(字符串) 成员 data():返回内容的字符数组形式
  • String的+是不是像c++一样重载运算符?
  • C++ Strings(字符串) 成员 length():返回字符串的长度
  • convert an ASCII string into an integer C++或JAVA都行
  • C++ Strings(字符串) 成员 size():返回字符串中字符的数量
  • C++如何通过ostringstream实现任意类型转string
  • C++ Strings(字符串) 成员 copy():将内容复制为一个字符数组
  • 利用C++实现从std::string类型到bool型的转换
  • C++ Strings(字符串) 成员 resize():重新设置字符串的大小
  • c++中string类成员函数c_str()的用法
  • C++ Strings(字符串) 成员 rbegin():返回一个逆向迭代器,指向最后一个字符
  • 请问,LINUX的C++中,如何将string类型与char数组一次性互相转换?
  • Python3中内置类型bytes和str用法及byte和string之间各种编码转换
  • public File(String parent,String child)的用法例子
  • String用法释疑
  • java的String类用法
  • JSP application(return String)用法详例
  • JSP request(return String)用法详例
  • C#中string用法实例详解
  • string中c_str(),data(),copy(p,n)函数的用法总结
  • C#中StringBuilder用法以及和String的区别分析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 那个函数可以截取String有效部分 ?
  • 请问用什么函数可以把String转换成int
  • 不好意思,JSP中String大小写转换函数是什么?
  • int型转化string型用什么函数?
  • 如何把jtextfield中String型的对象转变成int型,有现成的函数吗?
  • 这个构造函数new String(byte[],int,int,int)怎麽用?谢谢!
  • 提问一个简单问题,在main()函数中的(String[] args),代表什么?应该怎么用呢??谢谢
  • 请教一下在哪里可以查到gdk的库函数,例如gdk_draw_text,gdk_draw_string ????
  • 我想把大写转换成小写为什么我#include <string.h>后用strlwr()编译提示找不到strlwr()的定义?应该用什么函数呀?
  • 谁能告诉我当调用List.add(String)后是在哪些函数中实现重画的?
  • 有没有什么函数可以将String转化为Date?
  • 轻松拿分!String如何转换成int型?应该在什么地方查函数和类库的资料?
  • 请问ubuntu系统下linux内核库函数 /linux/string.h 在什么位置
  • java的"句柄"进入函数时不是有副作用吗?可是String怎么就不呢?
  • 我要在JPanel上画一个字符串String,有没有让它倒立(竖着显示在JPanel上)的函数(类似drawSting()的)
  • 太奇怪了,正在开发bootloader,gcc难道有内置的string的处理函数链接到我的程序中了?我根本没有链接C库啊。
  • 求一个函数linux c/c++ ,检测程序是否运行着,bool CheckRuning(const string name);
  • PHP函数addslashes与mysql_real_escape_string区别分析
  • PHP函数addslashes和mysql_real_escape_string的区别
  • oracle to_char函数将number转成string
  • java命名空间java.lang类string的类成员方法: string定义及介绍
  • 请告知一下String s1 = "mm"; 与String s1 = new String("mm");的区别!
  • java命名空间javax.xml.xpath类xpathconstants成员方法: string定义参考
  • String s = new String() 和 String s= null;有什么区别?
  • java命名空间javax.management.openmbean类simpletype<t>的类成员方法: string定义及介绍
  • 已知a=1,b=2 String string="a+b";如何将string转化为表达式,并计算结果
  • java命名空间java.io接口objectstreamconstants的类成员方法: tc_string定义及介绍
  • 对String.indexOf(String str,int fromIndex);和lastIndexOf(String str, int fromIndex);的困惑!
  • java命名空间javax.xml.ws.handler接口messagecontext成员方法: query_string定义参考
  • 问个低级的问题:我从库里取汉字时候,代码如下:String ls=ob.test(i);String dbstr1= new String(ls.getBytes("ISO-8859-1"),"GBK");
  • java命名空间java.lang类string的类成员方法: copyvalueof定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3