[解決済み] LPCWSTRとは何の略で、どのように扱えばいいのでしょうか?
2022-03-16 16:09:30
質問
まず、これは一体何なのでしょうか?ポインタ(LPCはロングポインタ定数の意味)だと思うのですが、"W"とはどういう意味なのでしょうか?文字列への特定のポインタなのでしょうか、それとも特定の文字列へのポインタなのでしょうか? 例えば、"TestWindow"という名前のWindowを閉じたいのですが、どうすればいいのでしょうか?
HWND g_hTest;
LPCWSTR a;
*a = ("TestWindow");
g_hTest = FindWindowEx(NULL, NULL, NULL, a);
DestroyWindow(g_hTest);
const char[6] は CONST WCHAR に変換できないので、このコードは不正であり、動作しません。
全く理解できない。
LPCWSTR, LPCSTR, LPSTRのすべてを明確に理解したいのです。ということで、いろいろと調べてみたのですが、余計にわからなくなってしまいました。msdnのサイトでは
FindWindowEx
は次のように宣言されています。
HWND FindWindowEx(
HWND hwndParent,
HWND hwndChildAfter,
LPCTSTR lpszClass,
LPCTSTR lpszWindow
);
つまり、最後のパラメータはLPCSTRであり、コンパイラはLPCWSTRを要求しているのです。 助けてください。
どのように解決するのですか?
LPCWSTR
は "Long Pointer to Constant Wide String" を意味します。Wはワイドを表し、文字列が2バイト文字で格納されることを意味します。
char
. 非ASCII文字列のみを扱う必要があるC/C++コードに共通することです。
に代入する通常のCリテラル文字列を取得する。
LPCWSTR
を付ける必要があります。
LPCWSTR a = L"TestWindow";
関連
-
[解決済み】 unsigned int vs. size_t
-
[解決済み】C++エラー。アーキテクチャ x86_64 に対して未定義のシンボル
-
[解決済み】C++のGetlineの問題(オーバーロードされた関数 "getline "のインスタンスがない
-
[解決済み】テンプレートの引数1が無効です(Code::Blocks Win Vista) - テンプレートは使いません。
-
[解決済み】c++でstd::vectorを返すための効率的な方法
-
[解決済み】'std::cout'への未定義の参照
-
[解決済み] C++11では、標準化されたメモリモデルが導入されました。その意味するところは?そして、C++プログラミングにどのような影響を与えるのでしょうか?
-
[解決済み] スマートポインターとは何ですか?
-
[解決済み] std::move()とは何ですか?また、どのような場合に使用するのですか?
-
[解決済み] CとC++でmain()は何を返すべきですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】getline()が何らかの入力の後に使用されると動作しない 【重複あり
-
[解決済み] エラーが発生する。ISO C++は型を持たない宣言を禁じています。
-
[解決済み】C++でランダムな2倍数を生成する
-
[解決済み】C++ 式はポインタからオブジェクトへの型を持っている必要があります。
-
[解決済み】浮動小数点例外エラーが発生する: 8
-
[解決済み】c++でstd::vectorを返すための効率的な方法
-
[解決済み】オブジェクト引数のない非静的メンバ関数の呼び出し コンパイラーエラー
-
[解決済み] to_string は std のメンバーではない、と g++ が言っている (mingw)
-
[解決済み】VC++の致命的なエラーLNK1168:書き込みのためにfilename.exeを開くことができません。
-
[解決済み] 変数サイズのオブジェクトが初期化されないことがある c++