六千字C++字符串详细教程(上)

简介: 六千字C++字符串详细教程

文章目录

字符串

字符串用于存储文本。一个string变量包含一组用双引号括起来的字符。

例如创建一个类型的变量string并为其赋值:

string greeting = "川川帅哥";

要使用字符串,您必须在源代码中包含一个额外的头文件,即 string库:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string greeting = "川川帅哥";
  cout << greeting;
  return 0;
}

演示:

1.png

字符串连接

使用加号把两个或者多个字符串拼接。

#include <iostream>
#include <string>
using namespace std;
int main () {
  string firstName = "川川 ";
  string lastName = "帅哥";
  string fullName = firstName + lastName;
  cout << fullName;
  return 0;
}

演示:

1.png

在上面的示例中,我们在 firstName 之后添加了一个空格,以便在输出时在川川和 帅哥 之间创建一个空格。但是,您也可以添加一个带引号 (" "或’ ')的空格。

例如:

#include <iostream>
#include <string>
using namespace std;
int main () {
  string firstName = "川川";
  string lastName = "帅哥";
  string fullName = firstName + " " + lastName;
  cout << fullName;
  return 0;
}

演示:

1.png

附加

C++中的字符串实际上是一个对象,其中包含可以对字符串执行某些操作的函数。例如,您还可以使用以下append()函数连接字符串:

#include <iostream>
#include <string>
using namespace std;
int main () {
  string firstName = "川川 ";
  string lastName = "帅哥";
  string fullName = firstName.append(lastName);
  cout << fullName;
  return 0;
}

演示:

1.png

数字和字符串

数字拼接

如果将两个数字相加,结果将是一个数字:

#include <iostream>
using namespace std;
int main () {
  int x = 30;
  int y = 20;
  int z = x + y;
  cout << z;
  return 0;
}

演示:

1.png

字符串拼接

如果添加两个字符串,结果将是字符串连接:

#include <iostream>
#include <string>
using namespace std;
int main () {
  string x = "20";
  string y = "21";
  string z = x + y;
  cout << z;
  return 0;
}

演示:

1.png

数字与字符拼接

如果您尝试向字符串添加数字,则会发生错误:

string x = "20";
int y = 21;
string z = x + y;

不管什么语言,都是不允许字符串与数字拼接的(个人所知)

字符串长度

要获取字符串的长度,请使用以下length()函数:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string txt = "chuanchuan";
  cout << "字符串长度为: " << txt.length();
  return 0;
}

演示:

1.png

提示: 您可能会看到一些 C++ 程序使用该size()函数来获取字符串的长度。这只是length()的别名。如果您想使用length()或,完全可以使用size():

#include <iostream>
#include <string>
using namespace std;
int main() {
  string txt = "chuanchuan";
  cout << "字符串长度为: " << txt.size();
  return 0;
}

演示:

1.png

相关文章
|
3月前
|
搜索推荐 编译器 C语言
【C++核心】特殊的元素集合-数组与字符串详解
这篇文章详细讲解了C++中数组和字符串的基本概念、操作和应用,包括一维数组、二维数组的定义和使用,以及C风格字符串和C++字符串类的对比。
93 4
|
2月前
|
算法 数据挖掘 Shell
「毅硕|生信教程」 micromamba:mamba的C++实现,超越conda
还在为生信软件的安装配置而烦恼?micromamba(micromamba是mamba包管理器的小型版本,采用C++实现,具有mamba的核心功能,且体积更小,可以脱离conda独立运行,更易于部署)帮你解决!
74 1
|
2月前
|
存储 C++
c++的指针完整教程
本文提供了一个全面的C++指针教程,包括指针的声明与初始化、访问指针指向的值、指针运算、指针与函数的关系、动态内存分配,以及不同类型指针(如一级指针、二级指针、整型指针、字符指针、数组指针、函数指针、成员指针、void指针)的介绍,还提到了不同位数机器上指针大小的差异。
56 1
|
2月前
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
334 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
2月前
|
缓存 网络协议 API
C/C++ StringToAddress(字符串转 boost::asio::ip::address)
通过上述步骤和示例代码,你可以轻松地在C++项目中实现从字符串到 `boost::asio::ip::address`的转换,从而充分利用Boost.Asio库进行网络编程。
72 0
|
2月前
|
编译器 C语言 C++
C/C++数字与字符串互相转换
C/C++数字与字符串互相转换
|
3月前
|
C++
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
|
3月前
|
存储 C++
C++(五)String 字符串类
本文档详细介绍了C++中的`string`类,包括定义、初始化、字符串比较及数值与字符串之间的转换方法。`string`类简化了字符串处理,提供了丰富的功能如字符串查找、比较、拼接和替换等。文档通过示例代码展示了如何使用这些功能,并介绍了如何将数值转换为字符串以及反之亦然的方法。此外,还展示了如何使用`string`数组存储和遍历多个字符串。
|
5月前
|
算法 C++
2730. 找到最长的半重复子字符串(c++,滑动窗口)
2730. 找到最长的半重复子字符串(c++,滑动窗口)
|
5月前
|
C++
567. 字符串的排列(c++)滑动窗口
567. 字符串的排列(c++)滑动窗口