C++ 字符串(string类)
来源:互联网 发布:redis 源码注释 编辑:程序博客网 时间:2024/06/03 03:50
概述:对于字符串在C++中的表现我们可以使用两种方式。其一,使用字符数组的形式,这种风格是C语言形式的。其二,就是使用string类来表示字符串。下面我们分别看一下这两种形式:
一、字符数组:
比如下面这段代码:
#include <iostream>using namespace std;int main (){ char temp[6] = {'H', 'e', 'l', 'l', 'o', '\0'}; cout << "Start message: "; cout << temp<< endl; return 0;}
编译运行上面的代码,我们会得到如下结果:
Start message:Hello
因为数组以’\0’作为结束标志,所以任何数组在创建的时候都要多预留出一个位置。其次,数组在创建的时候要给出长度值,否则就要使用new/delete或者malloc/free来动态创建数组了,当然如果在定义的时候进行了初始化也可以不指明长度,例如,下面这种写法也是可以的:
char temp[] = 'Hello';
C++中有一部分函数是用来对该种形式的字符串进行操作的,比如:strcpy(s1, s2)、strlen(s1)等等。
二、string类
在C++中,大部分时间我们都是用string类来表示字符串,顾名思义,string是一个类,是类就有相应的属性和方法,比如下面这段代码:
#include <iostream>#include <string>using namespace std;int main (){ string str1 = "wang"; string str2 = "dong"; string str3; int len ; // 复制 str1 到 str3 str3 = str1; cout << "str3 : " << str3 << endl; // 连接 str1 和 str2 str3 = str1 + str2; cout << "str1 + str2 : " << str3 << endl; // 连接后,str3 的总长度 len = str3.size(); cout << "str3.size() : " << len << endl; return 0;}
通过运用string类自带的方法,可以对字符串进行相应的操作,比之于字符数组确实方便了很多,对于具体的string类都有什么方法可供使用,在此只列举几个常用的,其他的就不一一列举了,大家感兴趣可以自己百度下。
string类提供了一系列针对字符串的操作,比如: string test = 'This is test' 1. test.append() -- 在字符串的末尾添加字符 2. test.find() -- 在字符串中查找字符串 4. test.insert() -- 插入字符 5. test.length() -- 返回字符串的长度 6. test.replace() -- 替换字符串 7. test.substr() -- 返回某个子字符串
阅读全文
0 0
- string类和c字符串
- 字符串处理总结之一(C#String类)
- 字符串处理总结之一(C#String类)
- 【c++】用string类定义字符串数组
- 字符串处理总结(C#String类)
- 字符串处理总结之一(C#String类)
- 字符串处理总结之一(C#String类)
- 【C++】 用string类定义字符串数组
- C++ C 风格字符串与string类
- 字符串处理总结之一(C#String类)
- 【学习C++】学习C++ -> string类字符串
- string替换所有指定字符串(C++)
- string替换所有指定字符串(C++)
- string替换所有指定字符串(C++)
- string替换所有指定字符串(C++)
- string替换所有指定字符串(C++)
- string替换所有指定字符串(C++)
- string替换所有指定字符串(C++)
- caffe 模型转tensorflow
- PAT_A 1054. The Dominant Color (20)
- 内存管理
- 简单的异步获取网络数据
- Ubuntu 14.04 安装caffe 极其依赖项
- C++ 字符串(string类)
- java实现缓存Map
- 燕麦云何洋开讲 | 移动办公 iPad pro的Cellular版更安全!
- 解决 display:inline-block 之间显示间隙
- foreach写失效的问题
- 代码整洁之道(1)
- 这次不忽悠:3个成功案例告诉你,开一家AI公司其实不难
- 通俗易懂遗传算法小例子
- Atom软件安装,插件安装,markdown preview等问题解决,心得体会