C++ Primer 第三章 标准库类型string运算
1. 标准库类型 string
string表示可变长的字符序列,使用string必须首先包含string头文件。如何初始化类的对象是由类本身决定的。
int n;
string s1;//默认初始化,s1是空字符串
string s2(s1);//s2是s1的副本,等价于string s2 = s1;
string s3("value");//s3是字面值"value"的副本,除了字面值后面的那个空字符外,等价于string s3 = "value";
string s4(n,'c');//把s4初始化为连续n个字符c组成的串;即s4=cccccccc(n个c);
2.读写string对象
2.1 读取string操作,string对象会自动忽略开头的空白(即空格符、换行符、制表符等)并从第一个真正的字符开始读起,直到遇见下一处空白为止。
string s;
cin >> s;
cout <<"输出内容"<< s << endl;
system("pause");

2.2 有时希望能在最终得到的字符串中保留输入时的空白符,则getline代替原来的>>可以实现;
string line;
while(getline(cin,line))
cout<<"输出内容"<<line<<endl;
system("pause");

3.string对象相加
PS:两个string对象可直接相加,string和字符字面值及字符串字面值一条语句中使用时,必须确保每个加法运算符(+)的两侧运算对象至少有一个是string对象。
string st1 = "hello,",st2 = "world!";
string st3 = st1+st2;
cout<<"st3的字面值为"<<st3<<endl; string st4 = "hello";
string st5 = st4+','+st2;
cout <<"st5字面值为"<<st5<<endl; string st6 = st4+","+"world";//正确 st4是string对象,st4+","还是string对象
cout << "st6字面值为"<<st6<<endl;
//string st7 = "hello"+","+st4;//错误"hello"和","都不是string对象
system("pause");

C++ Primer 第三章 标准库类型string运算的更多相关文章
- C++primer第三章标准库类型
除第二章介绍的基本数据类型外,C++ 还定义了一个内容丰富的抽象数据类型标准库. 本章将介绍标准库中的 vector.string 和 bitset 类型. string 类型支持长度可变的字符串 v ...
- C++ Primer 第三章 标准库类型vector+迭代器iterator 运算
1.vector: 标准库类型vector表示对象的集合,其中所有对象的类型都相同,集合中的每个对象都有一个与之对应的索引,索引用于访问对象.因为vector“容纳着”其他对象,所以它也常被称作容器( ...
- c++ primer 第三章 标准库类型
1. string 标准库 1.1初始化 string s1; 默认构造函数s1为空 string s2(s1); 将s2初始化为s1的一个副本 string s3("value" ...
- 谈谈两种标准库类型---string和vector
两种最重要的标准库---string和vector string和vector是两种最重要的标准库类型,string表示可变长的字符序列,vector存放的是某种给定类型对象的可变长序列. 一.标准库 ...
- C++ Primer 学习笔记_6_标准库类型 -- 命名空间using与string类型
标准库类型(一) --命名空间using与string类型 引: 标准库类型是语言组成部分中更主要的哪些数据类型(如:数组.指针)的抽象! C++标准库定义的是高级的抽象数据类型: 1.高级:由 ...
- C++ 标准库类型-String,Vector and Bitset
<C++ Primer 4th>读书摘要 最重要的标准库类型是 string 和 vector,它们分别定义了大小可变的字符串和集合.这些标准库类型是语言组成部分中更基本的那些数据类型(如 ...
- C++ primer读书笔记 chapter3 标准库类型
除第二章介绍的是C++的基本类型,本章将大致介绍一下C++定义的内容丰富的抽象数据库类型标准库.着重介绍一下sting.vector和bitset. 3.2标准库string类型 1.string类型 ...
- 标准库类型string
定义和初始化string对象 初始化string对象方式: string s1;//默认初始化,s1是一个字符串 string s2(s1);//s2是s1的副本 string s2 = s1;//等 ...
- 《C++ Primer 4th》读书笔记 第3章-标准库类型
原创文章,转载请注明出处:http://www.cnblogs.com/DayByDay/p/3911534.html
随机推荐
- js查找出现次数最多的字母
<!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...
- ssh 配置自动登录
假定 机器A 连接至 机器B . 1. 在机器A上,生成RSA秘钥对 ssh-keygen -t rsa 期间passphrase不输入密码.默认生成文件至 ~/.ssh/ -rw------- we ...
- LoadRunner使用之变量关联
性能测试LR小结之参数关联(LoadRunner11.0) 关联对于LR是经常需要用到的,本章使用简单登录来介绍关联功能. 1. Q:何为关联? 所谓的关联就是把脚本中某些写死的代码(ha ...
- POJ Sky Code 莫比乌斯反演
N. Sky Code Time Limit: 1000ms Case Time Limit: 1000ms Memory Limit: 65536KB 64-bit integer IO for ...
- DBCP连接Oracle,数据库重启后现OALL8 is in an inconsistent state异常
最近,DBCP连接Oracle,数据库重启后现OALL8 is in an inconsistent state异常. 版本说明 commons-dbcp-1.4.jar commons-pool-1 ...
- 《将博客搬至CSDN》的文章,
<将博客搬至CSDN>的文章,并将文章地址填写在上方的"搬家通知博文地址"中.)
- php5.3之前版本升级至5.3以及更高版本后部分语法简单归纳
1. Deprecated: Assigning the return value of new by reference is deprecated in /usr/local/www/uugui/ ...
- Device Tree(一):背景介绍
一.前言 作为一个多年耕耘在linux 2.6.23内核的开发者,各个不同项目中各种不同周边外设驱动的开发以及各种琐碎的.扯皮的俗务占据了大部分的时间.当有机会下载3.14的内核并准备学习的时候,突然 ...
- UVA 1452 八 Jump
Jump Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Status Practi ...
- socket 异步选择 WSAAsyncSelect 用法
WSAAsyncSelect 实现给异步socket给了另一种实现方式,就是通过窗口消息的方式来提醒对socket接收还是发送 msdn有非常全面的解释:https://msdn.microsoft. ...