C++标准类型库string
string初始化方式:
int main()
{string s1;//没有提供初始值,则默认初始化空串string s2(s1);//相同类型直接填入string s3("hehe");//字符串则要加双引号string s4(10,'a');//初始化为10个astring s5=s3;string s6="haha";cout<<s1<<s2<<s3<<s4<<s5<<s6<<endl;return 0;
}
打印:heheaaaaaaaaaahaha
用花括号初始化也可以,不是很常用,如:string s7{"abc"}
getline输出一整行
getline:参数(输入流,string对象),读取给定内容,遇到换行符停止(换行符也被读取进去了),它返回一个流的参数。
#include<stdio.h>
#include<string>using namespace std;int main()
{string s;while(cin>>s){cout<<s<<endl;}/*string s1;while(getline(cin,s1)){cout<<s1<<endl;}*/return 0;
}
当输入string字符时,遇到空格就停止了,得到一整行(包含空格的)就要用到getline函数,代码中注释部分就是。
string的size和empty函数,一个返回个数,一个返回是否为空。调用形式:s.size() , s.empty() ,其中size函数返回一个string::size_type类型的无符号数。
处理string对象中的每个字符,使用基于范围的for语句来遍历每个元素,并对其进行操作(改变要定义引用),处理一部分字符则要用到下标。
#include<iostream>
#include<string>using namespace std;int main()
{string s="pan";for(auto &c : s)//c的类型不确定,则用auto{c='a';//使每个字符都变为acout<<c<<endl;}string s1="haha";for(auto &c1 : s1){s1[1]='b';//使其第二个字符变为bcout<<c1<<endl;}return 0;}
打印:a
a
a
h
b
h
a
参考资料:C++ Primer第五版
C++标准类型库string相关推荐
- 【C++札记】标准模板库string
介绍 c++中字符串string对象属于一个类,内置了很多实用的成员函数,操作简单,方便更直观. 命名空间为std,所属头文件<string> 注意:不是<string.h>. ...
- C 标准库 - string.h
C 标准库 - string.h This header file defines several functions to manipulate C strings and arrays. stri ...
- 《C++ Primer Plus》读书笔记 第16章 string类和标准模板库
第16章 string类和标准模板库 1.string类 表16.1列出了string类的几个构造函数.其中NBTS(null-terminated string)表示以空字符结束的传统C-风格字符串 ...
- 第 16 章 string类和标准模板库
第 16 章 string类和标准模板库 16.1 string类 C语言在 string.h(C++中为cstring)提供了一系列的字符串函数. 16.1.1 构造字符串 string 实际上是模 ...
- 【String类和标准模板库】
1.string类 2.智能指针模板类 3.标准模板库 4.泛型编程 5.函数对象 6.算法 7.其他库 1.string类 string类是由头文件string支持的,要使用类,关键要知道它的公有接 ...
- 《C++ Primer Plus》学习笔记-string类和标准模板库
第16章 string类和标准模板库(本书附录G有详细介绍) 16.1 string类 string类是由头文件string支持的. string类位于命名空间std中. ctor标识是传统C++中构 ...
- C++Primer Plus笔记——第十六章 string类和标准模板库总结及程序清单
目录 本章小结 程序清单 string类 16.1 str1.cpp 16.2 strfile.cpp 16.3 hangman.cpp ...
- C++ Primer plus学习笔记-第十六章:string类和标准模板库
第十六章:string类和标准模板库 前言:这一章已经相当靠近全书的后面部分了:这一章我们会深入探讨一些技术上的细节,比如string的具体构造函数,比如适用于string类的几个函数,比如我们还会介 ...
- C++ Primer Plus 笔记(16章:string类和标准模板库)
16 string类和标准模板库 16.1 string类 16.1.1 构造字符串 常见的字符串书中给了7个,另外还有两个在C++11里新增的(NTBS)表示以空字符结束的传统字符串 构造函数 描述 ...
最新文章
- php localcompare,JS中使用sort结合localeCompare实现中文排序实例_javascript技巧
- AE,按照属性值关系选择要素
- 关于mina的setSendBufferSize体验
- python比java简单好学-21、PHP和python/JAVA比,哪个更好学?
- 让书写的Matlab代码运行更快 Recipes for Faster Matlab Code
- TensorFlow错误:TypeError: __init__() got an unexpected keyword argument 'serialized_options'
- JSP分页技术的实现(利用当前页进行前后加减,并利用href进行当前页面传值,传值当然是那个当前值变量)...
- 上市在即!华为Mate 20 X 5G版证件照公布:国行首款5G手机
- BZOJ-2243 [SDOI2011]染色
- SAP License:ERP横向集中部署还是纵向集中部署
- ext4.0.7 样式兼容性
- java 不可修改对象_Java并发编程(六)不可改变对象
- POJ 3580 SuperMemo 伸展树
- python教程视频下载-python怎么下载视频
- 博客园北京俱乐部第二次技术活动(2009/4/4)总结
- Android O后台服务限制总结
- 整合 activiti 7 springcloud
- 奥维互动地图如何删除标签_奥维互动地图浏览器标签附件添加设置方法
- 怎么把一个gif表情包分解成多个?
- python下载所有 XKCD 漫画