如何在 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