如何在 C++ 中把一个字符转换为字符串

Jinku Hu 2023年10月12日
  1. 使用 string::string(size_type count, charT ch) 构造函数将一个 char 转换为一个字符串
  2. 使用 push_back() 方法将一个 char 转换为一个字符串
  3. 使用 append() 方法在 C++ 中把一个 char 转换为一个字符串
  4. 使用 insert() 方法在 C++ 中把一个字符转换为一个字符串
如何在 C++ 中把一个字符转换为字符串

本文将演示用 C++ 将一个字符串转换为字符串的多种方法。

使用 string::string(size_type count, charT ch) 构造函数将一个 char 转换为一个字符串

本方法使用 std::string 构造函数之一来转换 C++ 中字符串对象的字符。构造函数需要 2 个参数:一个 count 值,即一个新的字符串将由多少个字符组成,以及一个分配给每个字符的 char 值。请注意,这个方法定义了 CHAR_LENGTH 变量,以提高可读性。我们可以直接将整数文字传递给构造函数。

#include <iostream>
#include <string>

using std::cin;
using std::cout;
using std::endl;
using std::string;

constexpr int CHAR_LENGTH = 1;

int main() {
  char character = 'T';

  string tmp_string(CHAR_LENGTH, character);
  cout << tmp_string << endl;

  return EXIT_SUCCESS;
}

输出:

T

使用 push_back() 方法将一个 char 转换为一个字符串

另外,我们也可以利用 push_back 内置方法将一个字符转换为字符串变量。首先,我们声明一个空的字符串变量,然后使用 push_back() 方法附加一个 char。根据示例,我们将 char 变量声明为 character,之后将其作为参数传递给 push_back 命令。不过,你也可以直接指定字面值作为参数。

#include <iostream>
#include <string>

using std::cin;
using std::cout;
using std::endl;
using std::string;

int main() {
  char character = 'T';

  string tmp_string;
  tmp_string.push_back(character);
  cout << tmp_string << endl;

  return EXIT_SUCCESS;
}

输出:

T

使用 append() 方法在 C++ 中把一个 char 转换为一个字符串

append 方法是 std::string 类的一个成员函数,它可以用来给字符串对象添加额外的字符。在这种情况下,我们只需要声明一个空字符串,然后添加一个 char 到其中,如下例代码所示。

#include <iostream>
#include <string>

using std::cin;
using std::cout;
using std::endl;
using std::string;

int main() {
  char character = 'T';

  string tmp_string;
  tmp_string.append(1, character);
  cout << tmp_string << endl;

  return EXIT_SUCCESS;
}

输出:

T

使用 insert() 方法在 C++ 中把一个字符转换为一个字符串

insert 方法也是 std::string 类的一部分。这个成员函数可以将一个给定的 char 插入到第一个参数指定的字符串对象的特定位置。第二个参数表示要插入该位置的字符的份数。

#include <iostream>
#include <string>

using std::cin;
using std::cout;
using std::endl;
using std::string;

int main() {
  char character = 'T';

  string tmp_string;
  tmp_string.insert(0, 1, character);
  cout << tmp_string << endl;

  return EXIT_SUCCESS;
}

输出:

T
作者: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

DelftStack.com 创始人。Jinku 在机器人和汽车行业工作了8多年。他在自动测试、远程测试及从耐久性测试中创建报告时磨练了自己的编程技能。他拥有电气/电子工程背景,但他也扩展了自己的兴趣到嵌入式电子、嵌入式编程以及前端和后端编程。

LinkedIn Facebook

相关文章 - C++ String