「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > `std::string` を `LPCSTR` および `LPWSTR` に変換するにはどうすればよいですか?

`std::string` を `LPCSTR` および `LPWSTR` に変換するにはどうすればよいですか?

2024 年 11 月 9 日に公開
ブラウズ:409

How to Convert a `std::string` to `LPCSTR` and `LPWSTR`?

std::string を LPCSTR および LPWSTR に変換する

std::string を LPCSTR または LPWSTR に変換するには、これらの性質を理解する必要があります。ポインタ。定義を明確にしましょう:

LPCSTR と LPSTR:

  • LPCSTR: 定数文字列への長いポインタ。これは本質的に const char* です。
  • LPSTR: 文字列への長いポインタ。 char*.

LPWSTR と LPCWSTR:

  • LPWSTR: Unicode (ワイド) 文字列へのロング ポインター (wchar_t*)。
  • LPCWSTR: 定数 Unicode (ワイド) 文字列への Long ポインタ (const) wchar_t*.

変換メソッド:

std::string を LPCSTR に変換するには、const char を返す c_str() メソッドを使用するだけです。 *。 const 修飾子は、返された文字列が変更できないことを保証します。

LPWSTR と LPCWSTR の混同:

LPWSTR と LPCWSTR の違いは、ポイントされた文字列が変更可能かどうかです。 LPWSTR は変更可能な wchar_t 文字列を指しますが、LPCWSTR は不変の wchar_t 文字列を指します。

例:

std::string str = "Hello World";
LPCSTR lpcstr = str.c_str();
LPWSTR lpwstr = L"Hello World";

これで、それぞれ LPCSTR 引数と LPWSTR 引数を必要とする関数で lpcstr と lpwstr を使用できるようになりました。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3