(18)C++ string和标准模板库
一、stringl类
1.string构造函数
string a1("abc");//初始化字符串
cout<<a1<<endl;//abc string a2(, '#');//n个字符
cout << a2 << endl;//###### string a3(a1);//复制
cout << a3 << endl;//abc char c[] = "hello";
string a4(c,);//从起始截取前n个字符
cout << a4 << endl;//hel string a5(c+,c+);//截取一段字符串
cout << a5 << endl;//el string a6(c, ,);//从n1开始截取n2个
cout << a6 << endl;//ell
2.字符串输入
#include<iostream>
#include<string>
using namespace std; int main() { //string str1;
//cin >> str1;//输入字符串方法1
//cout << str1 << endl; string str2;
getline(cin, str2);//输入字符串方法2
cout << str2 << endl;
}
3.使用字符串
(1)比较字符串 比较ASCII码
int a = ;
if ('abc' > 'daaa') {
a = ;
}
else {
a = -;
}
cout << a << endl;
(2)字符串长度
string a = "abc";
cout << a.length() << endl;
cout << a.size() << endl;
(3)查找
查找是否包含此字符串,有则返回首字符索引,没有返回 npos
string a = "aabc";
cout << a.find("bc111")<<endl;
npos表示字符串可存储的最大字符数
二、智能指针模板类
智能指针定义后,离开代码块指针将过期
auto_ptr<string> str(new string);//C++98方式,过时
unique_ptr<string> str(new string);//C++11 一般使用这个
shared_ptr<string> str(new string);//C++11 如果多个指针指向同一个对象,用这个
三、标准模板库
(18)C++ string和标准模板库的更多相关文章
- C++ primer plus读书笔记——第16章 string类和标准模板库
第16章 string类和标准模板库 1. string容易被忽略的构造函数: string(size_type n, char c)长度为n,每个字母都为c string(const string ...
- C++——string类和标准模板库
一.string类 1.构造函数 string实际上是basic_string<char>的一个typedef,同时省略了与内存管理相关的参数.size_type是一个依赖于实现的整型,是 ...
- C++标准模板库Stand Template Library(STL)简介与STL string类
参考<21天学通C++>第15和16章节,在对宏和模板学习之后,开启对C++实现的标准模板类STL进行简介,同时介绍简单的string类.虽然前面对于vector.deque.list等进 ...
- 标准模板库(STL)学习指南之sort排序
对于程序员来说,数据结构是必修的一门课.从查找到排序,从链表到二叉树,几乎所有的算法和原理都需要理解,理解不了也要死记硬背下来.幸运的是这些理论都已经比较成熟,算法也基本固定下来,不需要你再去花费心思 ...
- 标准模板库(STL)学习指南之List链表
本文转载自天极网,原文地址:http://www.yesky.com/255/1910755.shtml.转载请注明 什么是STL呢?STL就是Standard Template Library,标准 ...
- STL标准模板库(简介)
标准模板库(STL,Standard Template Library)是C++标准库的重要组成部分,包含了诸多在计算机科学领域里所常见的基本数据结构和基本算法,为广大C++程序员提供了一个可扩展的应 ...
- 【转】C++标准库和标准模板库
C++强大的功能来源于其丰富的类库及库函数资源.C++标准库的内容总共在50个标准头文件中定义.在C++开发中,要尽可能地利用标准库完成.这样做的直接好处包括:(1)成本:已经作为标准提供,何苦再花费 ...
- 【c++】标准模板库STL入门简介与常见用法
一.STL简介 1.什么是STL STL(Standard Template Library)标准模板库,主要由容器.迭代器.算法.函数对象.内存分配器和适配器六大部分组成.STL已是标准C++的一部 ...
- STL 简介,标准模板库
这篇文章是关于C++语言的一个新的扩展--标准模板库的(Standard Template Library),也叫STL. 当我第一次打算写一篇关于STL的文章的时候,我不得不承认我当时低估了这个话 ...
随机推荐
- Transition 过渡/转场动画(一)
UIViewController 的转场效果 当viewController通过push 或 present 进行转场时, 系统自带的动画是从右侧push进来一个新的viewControler (或从 ...
- Php单元测试 phpunit & codecept
phpunit: Windows版本 整体上说,在 Windows 下安装 PHAR 和手工在 Windows 下安装 Composer 是一样的过程: 下载链接:http://pan.baidu.c ...
- Linux操作系统(五)_部署Zentao
一.部署Zentao 1.检查服务器信息 uname -a 2.下载相应的部署包(一键安装包) http://dl.cnezsoft.com/zentao/9.8.1/ZenTaoPMS.9.8.1. ...
- <读书笔记>Javascript系列之6种继承(面向对象)
写在前面: 以下三选一: 阅读博文JavaScript 对象详解. 阅读<JavaScript权威指南>第6章. 阅读<JavaScript高级程序设计>第6章. 注意:只需要 ...
- Selenium:多表单(frame/iframe)切换(Switch模块)
frame标签有frameset.frame.iframe三种,frameset跟其他普通标签没有区别,不会影响到正常的定位,而frame与iframe需要切换进去才能定位到其中的元素 比如下面这个网 ...
- automate sap遇上的一些问题
1. get column name of SAPGuiTable columnCount = SAPGuiSession("Session").SAPGuiWindow(&quo ...
- JavaScript Stack
function Stack() { var items = []; this.push = function(item) { items.push(item) } this.pop = functi ...
- Codefores 507D The Maths Lecture( 数位DP )
D. The Maths Lecture time limit per test 1 second memory limit per test 256 megabytes input standard ...
- 在$CF$水题の记录
CF1158C CF1163E update after CF1173 很好,我!expert!掉rating了!! 成为pupil指日可待== 下次要记得合理安排时间== ps.一道题都没写的\(a ...
- Pycharm 激活码2017最新
BIG3CLIK6F-eyJsaWNlbnNlSWQiOiJCSUczQ0xJSzZGIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiI ...