标准库String类型

1、String对象的读写

     用iostream标准库可以用于读写内置类型如int、double等的值,同样也可以用iostream和string标准库,使用输入输出操作符来读写string对象:

注:从标准输入读取string,并将读入的串存储在s中。string类型的输入操作符:

  • 读取并忽略开头所有的空白字符(如空格、换行符、制表符)
  • 读取字符直至在此遇到空白字符,读取终止。

另外还有一个有用的string IO操作getline。这个函数接受两个参数:一个输入流对象和一个string对象。getline函数从输入流下一行读取,并保存读取的内容到string中,但不包含换行符。和输入操作符不一样,getline并不忽略开头的换行符。只要getline遇到换行符,即便它是输入的第一个字符,getline也将停止输入并返回。如果第一个字符就是换行符,则string参数将被置为空。

2、String类常用操作

1)string对象的长度是指string对象中字符的个数,可以通过size操作获取:

cout<<line<<"The length of line is "<<line.size()<<endl;

注:size操作返回值是string::size_type类型的值,在标准库中将其定义为unsigned类型。对于任一种给定的数据类型,它的unsigned型所能表示的最大正整数比对应的signed型要大一倍。所以,size_type存储的string长度是int所能存储的两倍。故不能把size的返回值赋值给一个int变量。

而如果只需要知道string对象是否为空,则用empty操作。

cout<<line.empty()?"The string is null":"The string is not null"<<endl;

2)string关系操作符

     string类定义了几种关系操作符用来比较两个string值的大小,这些操作符实际上是比较每个string对象的字符。其再比较的时候是区分大小写的,即同一个字符的大小写形式被认为是两个不同的字符。

     关系操作符<, <=, >, >=分别用于测试一个string对象是否小于、小于等于、大于、大于等于另一个string对象。

3)string对象的赋值

对于string对象而言,可以把一个string对象赋值给另一个string对象:

对于两个string对象相加与此类似

4)和字符串字面值的连接

当进行string对象和字符串字面值混合连接操作时,+操作符的左右操作数必须至少有一个是string类型。

5)从string对象获取字符

string类型通过下表操作符([])来访问string对象中的单个字符。下表操作符需要取一个size_type类型的值,来标明要访问字符的位置。这个下表通常被称为“下标”或“索引”。

注:下标操可用作左值

3、string对象中字符的处理

对string对象中的单个字符进行处理时,需要知道某个特殊字符是否为空白字符、字母或数字。string对象中有关字符处理的函数都在cctype头文件中定义。

有关string类其他相关属性及方法的定义参见msdnhttp://msdn.microsoft.com/zh-cn/library/system.string(v=VS.100).aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值