1. ホーム
  2. c++

[解決済み】std::stringにcharを追加する方法は?

2022-04-10 11:12:48

質問

以下は、エラーで失敗します。 prog.cpp:5:13: error: invalid conversion from ‘char’ to ‘const char*’

int main()
{
  char d = 'd';
  std::string y("Hello worl");
  y.append(d); // Line 5 - this fails
  std::cout << y;
  return 0;
}

また、次のようなものも試しましたが、これはコンパイルはできますが、実行時の動作は不安定です。

int main()
{
  char d[1] = { 'd' };
  std::string y("Hello worl");
  y.append(d);
  std::cout << y;
  return 0;
}

このような馬鹿な質問で申し訳ないのですが、グーグルで検索したところ、私が見ることができたのは、単に"char array to char ptr", "char ptr to char array" などでした。

どのように解決するのですか?

y += d;

私なら += 演算子の代わりに、名前付き関数を使用します。