栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++primer 第3章 字符串、向量和数组

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++primer 第3章 字符串、向量和数组

3.1命名空间的using声明

C++引入了类作用域,类是出现在文件内。在不同的作用域中可以定义相同名字的变量,互不干扰便于系统区别他们。

通过声明命名空间,可以方便地访问该空间下的变量、函数。

using namespace std;

也可以直接声明命名空间的变量、函数。用什么,声明什么。

using std::cin;

自定义命名空间。

namespace ns1//指定命名空间ns1

{

    int a;

    double b;

}

头文件不应包含using声明

防止冲突。

3.2标准库类型string

长度可变的字符序列。内存连续。

string 相当于特殊的容器。

3.2.1定义和初始化string对象

string s1;            //默认初始化

    string s2(s1);        //直接初始化

    string s3 = s1;       //拷贝初始化

    string s4("value");   //直接初始化

    string s5 = "value";  //拷贝初始化

    string s6(5, 'c');    //直接初始化

3.2.2string对象上的操作

读写string对象

  

  

  

3.2.3处理string对象中的字符

cctype头文件中的函数

isalnum(c)

当c是字母或数字时为真

isalpha(c)

当c是字母时为真

iscntrl(c)

当c是控制字符时为真

isdigit(c)

当c是数字时为真

isgraph(c)

当c不是空格但可打印时为真

islower(c)

当c是小写字母时为真

isprint(c)

当c是可打印字符时为真

ispunct(c)

当c是标点符号时为真

isspace(c)

当c是空白时为真

isupper(c)

当c是大鞋字母时为真

isxdigit(c)

当c是十六进制数字时为真

tolower(c)

如果c是大写字母,输出对应的小写字母;否则原样输出c

toupper(c)

如果c是小写字母,输出对应的大写字母;否则原样输出c

3.3标准库类型vector

C++既有类模板,也有函数模板。

模板本身不是类或函数,可以看作 为编译器生成类或函数编写的一份说明。

编译器根据目标创建类或函数的过程叫实例化。

3.3.1 定义和初始化vector对象

列表初始化vector对象

3.3.3vector支持的操作

Vector支持的操作

v.empty()

如果v不含任何元素,则为真;否则假

v.size()

返回v中元素个数

v.push_back(t)

向v的尾端添加一个值为t的元素

v[n]

返回v中索引为n的元素的引用

v1 = v2

用v2中元素的拷贝替换v1中的元素

v1={a,b,c}

用列表中的元素替换v1的元素

v1 == v2

比较是否相等

v1 != v2

比较是否不相等

<,<=,>,>=

以字典顺序进行比较

v.clear()

清空

v.erase(it)

删除迭代器it指向的元素。返回尾后迭代器。

3.4迭代器介绍

迭代器:容器类型内置的“指针”

标准容器迭代器的运算符

*iter

返回迭代器iter所指元素的引用

iter->mem

解引用iter并获取该元素的名为mem的成员

++iter

令iter指向容器的下一个元素

--iter

令iter指向容器的上一个元素

iter1 == iter2

判断两个迭代器是否相等

iter1 != iter2

判断两个迭代器是否不相等

end表示尾后,它本身不指向元素,不能解引用

3.5数组

定义数组时,维度应该是const

显示初始化数组元素

字符数组的特殊性

不能将数组的内容拷贝给其他数组作为初始值。

3.5.3   指针和数组

C++中,使用数组的时候编译器一般会把它转换成指针。

取值符& 获取指向某个对象的指针。

编译器会将数组名替换为指向数组首元素的指针。

3.5.4   C风格字符串

标准容器迭代器的运算符

strlen(p)

返回p的长度,空字符不计算在内

strcmp(p1,p2)

比较p1和p2的相等性;相等为0;p1大为正;p1小为负。

strcat(p1,p2)

将p2附加到p1之后,返回p1

strcpy(p1,p2)

将p2拷贝到p1,返回p1

3.6多维数组

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1019611.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号