首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

c++基础之字符串向量和数组

上一次整理完了《c++ primer》的第二章的内容。这次整理本书的第3章内容。 这里还是声明一下,我整理的主要是自己不知道的或者需要注意的内容,以我本人的主观意志为准,并不具备普适性。...字符串、数组、vector等都是存储在内存的连续空间中,而且都是线性结构。算是c++语言中的基础数据结构了。...string(const string&): 使用一个字符串来初始化另一个字符串,新字符串是传入字符串的一个副本 string(char*): 使用一个字符数组来初始化字符串 string(int,...另外提一句,我当初在初学的时候一直把c语言的思路带入到c++中,导致我一直认为跌迭代器就是指针或者下标,我试图使用指针和下标的方式来理解,然后发现很多地方搞的很乱,也很模糊。...= pend; it++) { cout << *it << endl; } c++ 11中引入两个函数来获取数组的begin位置和end位置,分别为begin() 与 end() int ai

1.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

c++字符串

C++ 字符串C++ 提供了以下两种类型的字符串表示形式:C 风格字符串C++ 引入的 string 类类型C 风格字符串C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持。...字符串实际上是使用 null 字符 \0 终止的一维字符数组。因此,一个以 null 结尾的字符串,包含了组成字符串的字符。下面的声明和初始化创建了一个 RUNOOB 字符串。...site[7] = {'R', 'U', 'N', 'O', 'O', 'B', '\0'};依据数组初始化规则,您可以把上面的语句写成以下语句:char site[] = "RUNOOB";以下是 C/C+...C++ 编译器会在初始化数组时,自动把 \0 放在字符串的末尾。...我们将学习 C++ 标准库中的这个类,现在让我们先来看看下面这个实例:现在您可能还无法透彻地理解这个实例,因为到目前为止我们还没有讨论类和对象。

41210

c++字符串

C++ 字符串 C++ 提供了以下两种类型的字符串表示形式: C 风格字符串 C++ 引入的 string 类类型 C 风格字符串 C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持。...字符串实际上是使用 null 字符 \0 终止的一维字符数组。因此,一个以 null 结尾的字符串,包含了组成字符串的字符。 下面的声明和初始化创建了一个 RUNOOB 字符串。...C++ 编译器会在初始化数组时,自动把 \0 放在字符串的末尾。...+ 中的 String 类 C++ 标准库提供了 string 类类型,支持上述所有的操作,另外还增加了其他更多的功能。...我们将学习 C++ 标准库中的这个类,现在让我们先来看看下面这个实例: 现在您可能还无法透彻地理解这个实例,因为到目前为止我们还没有讨论类和对象。

29720

第3章 字符串向量和数组

这是在看完了C++ Primer这本书之后又回过头来码的笔记,在看的时候也发现,看到后面,前面就忘了,有点像狗熊掰玉米。。。...vector v5{"hi"}; // 列表初始化:v5有一个元素 vector v6("hi"); // 错误:不能使用字符串字面值构建...字符数组可以用字符串字面值进行初始化,要注意,字符串字面值的结尾处有一个空字符,这个空字符也会被拷贝到字符数组中。所以在定义字符数组的大小时,要考虑到这个空字符。...列表初始化,没有空字符 char a2[] = {'C', '+', '+', '\0'}; // 列表初始化,含有显式的空字符 char a3[] = "C+...14.现代的 C++程序应尽量使用 vector和迭代器,避免使用内置数组和指针;应该尽量使用 string,避免使用 C风格的基于数组的字符串

59560

C++字符串详解

用字符数组存放字符串容易发生数组越界的错误,而且往往难以察觉。因此,C++ 标准模板库设计了 string 数据类型,专门用于字符串处理。...string 类型的变量就是用来存放字符串的,也叫“string对象”。string 并不是 C++ 的基本数据类型,它是 C++ 标准模板库中的一个“类”。关于这一点,现在不必深究,以后会学到。...]=“hello"; 错误的表现形式 存储字符串的时候,数组长度要给字符串结尾’\0’留一个长度防止越界。...(2, "sz"); //从[2]位置开始添加字符串“sz”,并返回形成的新字符串 .str.insert(2, "abcd", 3) //从[2]开始添加字符串“abcd”前3个字符,并返回形成的新字符串....str.insert(2, "abcd", 1, 3) //从[2]开始添加字符串“abcd”前[2]~[2+(3-1)]个字符,并返回形成的新字符串

94410

字符串变形 C++

题目描述 对于一个长度为 n 字符串,我们需要对它做一些变形。...首先这个字符串中包含着一些空格,就像"Hello World"一样,然后我们要做的是把这个字符串中由空格隔开的单词反序,同时反转每个字符的大小写。...进阶:空间复杂度 O(n)O(n) , 时间复杂度 O(n)O(n) 输入描述: 给定一个字符串s以及它的长度n(1 ≤ n ≤ 10^6) 返回值描述: 请返回变形后的字符串。...题目保证给定的字符串均由大小写字母和空格构成。 思路分析 要看清楚题目说的是将单个单词里面的字母顺序,而不是将这个字符串里面的单词的顺序颠倒。...因为C++的算法库里面有reverse函数,它的作用就是将整个字符串的字符顺序颠倒过来,所以我的思路比较大众化,为将单词里面的字母顺序颠倒,首先用reverse函数将整个字符串的字符顺序颠倒,然后,用空格作为字符串划分单词的判断点

14640

C++字符串

参考链接: C++ strcspn() C++字符串  C中的字符串C++中的字符串字符串创建字符元素存取字符串赋值字符串操作字符串流   总结 C中的字符串  C语言中不提供字符串类型,因此所谓的字符串不过是一组以...当然,C++仍旧保留了这种C语言的字符串操作方式,而中的相关内容以C++的表现形式被包含于中。...为了方便描述,本文后面的内容把C语言下的字符串用cstring来表示。  C++中的字符串  C++中除了支持C中的字符数组外,还提供了一个更加强大的string类。...字符串创建  C++对string的构造函数实现了多个重载,因此有很多不同的方法来定义并初始化一个字符串。...此外,C++还提供了append()和push_back()来对字符串进行增操作,erase()来对字符串进行减操作,clear()来对字符串进行清空等操作。

62120

C++ 字符串分割

本文链接:https://blog.csdn.net/K346K346/article/details/102553618 编译运行环境:VS2017 + Win32 + Debug ---- C++...中经常需要对字符串按照分隔符进行分割以获得子串序列,子串的顺序与其在原字符串中出现的顺序一致。...一般有两种需求场景: (1)给定一个分隔符(单个字符或子串)分割字符串; (2)给定一个或多个分隔符(单个字符),分割字符串。...当给定的分隔符不在原字符串中,则原字符串不被分割,返回单个元素为原字符串的 vector。 注意,本文实现时,如果被分割后的子串为空串,则不计入最终的子串序列。.../@brief: 指定单个分隔符(单个字符或子串)分割字符串 //@param: src 原字符串;delimiter 分隔符,单个字符或子串 vector splitStr(const

4.3K20

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券