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

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

访问字符串

访问字符串

您可以通过引用方括号内的索引号来访问字符串中的字符[]。这个例子打印的第一个字符中 的myString:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string myString = "Hello boy";
  cout << myString[0];
  return 0;
}

演示:

1.png

注意:字符串索引从 0 开始:[0] 是第一个字符。[1] 是第二个字符,以此类推。

更改字符串字符

需要指定特定字符更换,例如更换H为J:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string myString = "Hello boy";
  myString[0] = 'J';
  cout << myString;
  return 0;
}

演示:

1.png

用户输入字符串

可以使用提取运算符cin来显示用户输入的字符串。例如:

#include <iostream>
#include <string>
using namespace std;
int main() {
string firstName;
cout << "请输入你的性: ";
cin >> firstName; //从键盘获取用户输入 
cout << "你的性是: " << firstName;
}

演示:

1.png

但是,cin将空格(空格、制表符等)视为终止符,这意味着它只能显示一个单词(即使您键入多个单词):

#include <iostream>
#include <string>
using namespace std;
int main() {
string fullName;
cout << "请输入名字: ";
cin >> fullName;
cout << "你的名字叫做: " << fullName;
}

演示:

1.png

这就是为什么在处理字符串时,我们经常使用该getline() 函数来读取一行文本。它cin作为第一个参数,字符串变量作为第二个:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string fullName;
  cout << "输入你的名字: ";
  getline (cin, fullName);
  cout << "你的名字叫做: " << fullName;
  return 0;
}

演示:1.png

省略命名空间

您可能会看到一些 C++ 程序在没有标准命名空间库的情况下运行。该using namespace std行可以省略并替换为std关键字,后跟::用于string(和cout)对象的运算符:

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

演示:

1.png

相关文章
|
15天前
|
编译器 开发工具 C++
Dev-C++详细安装教程及中文设置(附带安装包链接)
Dev-C++详细安装教程及中文设置(附带安装包链接)
40 0
|
1月前
|
存储 算法 编译器
【C++ 字符数组的模板特化】面向字符串的C++模板特化:理解与实践
【C++ 字符数组的模板特化】面向字符串的C++模板特化:理解与实践
47 1
|
1月前
|
程序员 API 数据库
【Cmake工程 库相关教程 】深入理解CMake工程C/C++ 库管理技巧
【Cmake工程 库相关教程 】深入理解CMake工程C/C++ 库管理技巧
60 0
|
1月前
|
存储 并行计算 前端开发
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术(二)
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术
39 1
|
1月前
|
数据安全/隐私保护 C++ 容器
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术(一)
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术
47 0
|
1月前
|
设计模式 算法 C++
【C++ 泛型编程 进阶篇】C++元模板编程与设计模式的结合应用教程(二)
【C++ 泛型编程 进阶篇】C++元模板编程与设计模式的结合应用教程
26 0
|
30天前
|
Java 程序员 Maven
【C/C++ CommonAPI入门篇】深入浅出:CommonAPI C++ D-Bus Tools 完全使用教程指南
【C/C++ CommonAPI入门篇】深入浅出:CommonAPI C++ D-Bus Tools 完全使用教程指南
58 0
|
存储 编译器 Linux
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
|
9天前
|
安全 C++
石头剪子布(字符串解法 C++)
石头剪子布(字符串解法 C++)
17 0
|
1月前
|
算法 编译器 C语言
【C++ 函数 基本教程 第六篇 】深度解析C++函数符号:GCC与VS的名称修饰揭秘
【C++ 函数 基本教程 第六篇 】深度解析C++函数符号:GCC与VS的名称修饰揭秘
41 1

热门文章

最新文章