<细节>C++标准库string类型

1.想使用c++的标准库string,首先需要包含相关头文件

#include <string>

(注:是string而不是string.h,后者是C++头文件)

2.string对象定义和初始化

string str1 = "abcd";
string str2 = str1 ;  //str2(str1)也可
string str3(5,'c');   // 5个字符c

3.string对象读写

<pre name="code" class="cpp">string str;
cout<<"输入字符串为:";
cin>>str;
cout<<"输出字符串为:"<<str<<endl;

 
 

注意:读取并忽略开头所有空白字符

读取字符直至再次遇到空白字符

忽略开头的换行字符

4. 用getline读取整行文本

getline函数接受两个参数:输入流对象(cin),string对象。作用是把输入流对象读入到string对象中。如果成功则返回读取字节数,如果失败则返回-1。

<span style="font-family: Arial, Helvetica, sans-serif;">string str;
getline(cin,str);
cout<<"输出为:"<<str<<endl;</span>

注意:getline并不忽略开头空白字符


getling只要遇到换行符(回车),即便是第一个字符,getline也将停止读入并返回。如果第一个字符就是换行符,则字符串为空。


5.string的size操作

	string str = "abcde";
	cout<<str<<"字符个数为"<<str.size()<<endl;

注:size()返回值为string::size_type类型值。

6.string的find操作

	string pShort = "hello";
	string pLong = "hello word";
	string::size_type found = pLong.find(pShort);
	if( found == string::npos)
		cout<<pShort<<"不存在于"<<pLong<<"中"<<endl;
	else
		cout<<pLong<<"的第"<<found<<"个开始是"<<pShort<<endl;
(注意:find()返回值类型为string::size_type,如果不存在返回string::npos,存在则返回出现的位置)








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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值