問題タブ [widestring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
314 参照

winapi - リッチエディット コントロールからワイド文字列をストリームアウトする方法は?

EM_STREAMOUTこれは私の試みであり、 ASCII 以外の文字に遭遇したときに疑問符が返される理由がわかりません。

このコードはウィンドウからテキストをコピーして元に戻しますが、今回は疑問符のみです。

0 投票する
1 に答える
1176 参照

c++ - ワイド文字列と文字列、Windows C++ でのパフォーマンスに影響しますか

C++ プロジェクトで多くの Unicode ファイル パスを処理しています。私は自分のコードでチェックを実行します。それらがマルチバイト文字列に収まるのに十分な場合は、通常の文字列 (std::string) 変数として保持します。文字列がマルチバイト文字列に収まらない場合は、変数として使用します。ワイド文字列。

私の質問は、パスを完全に wstring として使用できるかどうかです..? パフォーマンスに影響しますか?文字列の操作、ファイルのオープン、作成、名前の変更、および wstring を使用した削除を行う必要があります。したがって、マルチバイト文字列またはワイド文字列をチェックするのではなく、それを wstring として直接使用して、if/else を大幅に節約したいと考えています。

あなたの考えを共有してください...

0 投票する
2 に答える
1118 参照

c++ - C++ L"whatever" -> wstring -> basic_string

パーサー用の「文字列スプリッター」を書いていますが、char と wchar_t の両方を使用できるようにしたいと考えています。私は次の方法を持っています:

そして、解析するワイド文字列を指定したいと思います:

私も試しました:

したがって、テンプレートについて理解できないことがあると思います。どうすればいいですか?

ご協力いただきありがとうございます !

編集:ここに私のビルドログがあります:

編集 :

parser.cpp のコードは上記のものです。

0 投票する
2 に答える
451 参照

c - C でワイド文字列リテラルとナロー文字列リテラルを混在させる

次のすべてが機能することがわかりました。

出力は

ワイド文字列リテラルとナロー文字列リテラルを自由に組み合わせて、結果としてワイド文字列リテラルを取得できるのはなぜですか? それは文書化された動作ですか?

0 投票する
1 に答える
270 参照

php - PHPのワイド文字列?

もともと、光学検査でパスは同じだったのに、file_exists() が一方に true を返し、他方に false を返したという問題がありました。問題を絞り込むのに何時間も費やした後、次のコードにたどり着きました...(パスは編集済み)

...そしてその出力:

したがって、興味深いことに、単純に文字列を書き留めることを含む 2 つのバージョンでは、明らかにワイド文字が使用されています (これらは file_exists() に関して機能しました)。私はこれを調査しようとしましたが、結局、phpにはワイド文字列のようなものがないということだけわかりました。また、16 進エディタを使用して、すべての文字列定数が実際には php ファイル内の 1 文字あたり 1 バイトしか使用しないことを確認しました。

phpinfo() は、PHP バージョン 5.4.9 を使用しており、64 ビット Linux マシン fwiw で実行していることを示しています。マニュアルは 1 週間前に編集されました。その情報は正確ではありませんか、それともここで何が起こっているのですか?

0 投票する
1 に答える
191 参照

c++ - 関数のサイズ パラメータ

多くの関数では、出力である文字列のサイズを設定する必要があることがわかります。

GetComputerNameWには以下が必要です。

RegSetValueExWには以下が必要です。

GetWindowTextWには以下が必要です。

GetModuleBaseNameWには以下が必要です。

私の質問は、設定されたサイズの違いをどのように作るのですか? 文字列は常に WCHAR として定義され、設定されるサイズは大きく異なります。

0 投票する
1 に答える
4544 参照

c++ - C++ での string と wstring のコンソール印刷

文字列と幅の広い文字列に関連する多くの質問があることがわかります。しかし、私が探している情報を提供してくれる人はいないので、新しい質問を投稿しています。

私はこのコードを持っています...

RHELボックスでこのコードをコンパイルして実行すると(...(ssh経由で接続され、gcc 4.1.2を実行)、このo/pが表示されます(中央の2行が正しく印刷されないことに注意してください)

私のAppleラップトップとFreeBSD(ssh経由)ボックスの1つでは、w_*コードからo/pを取得できません。最初と最後の cout を実行するだけです vikrant मुरुगन-----18

私の理解では、指定されていない場合、これらの文字列は UTF 8 として扱われ、string で処理できる場合は wstring も処理されます。そのアプローチに何か問題がありますか?アドオンに関するいくつかの質問は... 単なる表示上の問題ですか? または wstring は Linux では信頼できませんか? 追加情報も役立つ場合があります。

0 投票する
1 に答える
528 参照

c++ - Boost.Log はオーバーロードされたストリーム挿入演算子を無視する

特定の方法でログに表示したいクラスがあるため、その<<演算子をオーバーロードしました。

上記のクラスをログ ストリームに挿入します。

コンパイルエラーが発生します:

<<エラーは、ワイド文字列をオーバーロードしたという事実にあることを知っています。ostreamの代わりに使用する場合はすべて問題wostreamありませんが、ワイド文字列バージョンを使用したいのです。

シンクのロケールを設定しようとしました:

またBOOST_LOG_USE_WCHAR_T、ログ関連のインクルードの前に定義しています。

ワイド文字列<<演算子でロギングを機能させるためにできることはありますか?

Boost 1.55.0 を使用しています。