問題タブ [tchar]
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.
c++ - C/C++(ms)でchar[]をtchar[]に/から変換する最も簡単な方法は何ですか?
これはかなりソフトボールの質問のように思えますが、char と tchar の参照に関して非常に多くのバリエーションがあるように見えるため、私は常にこの関数を調べるのに苦労しています。
c++ - 異なる文字セットを持つライブラリのヘッダー ファイルでの TCHAR の処理
2 つのサードパーティ ライブラリを使用するプロジェクトがあり、どちらもヘッダー ファイルで TCHAR を使用します。残念ながら、1 つのライブラリはマルチバイトとしてコンパイルされ (ライブラリ a と呼びます)、もう 1 つのライブラリは Unicode としてコンパイルされます (ライブラリ b と呼びます)。
今私が理解している方法は、プリコンパイラによって TCHAR がビルドオプションに応じて wchar または char に置き換えられるということです。そのため、ライブラリ a がコンパイルされたとき、TCHAR 型のパラメータを受け取るメソッドは char 型のパラメータを期待するように設定され、ライブラリ b のメソッドは wchar 型のパラメータを期待するように設定されています。
残念ながら、消費するアプリケーションも文字セットを選択する必要があります。Unicode を選択すると、ライブラリ a にインクルードしたヘッダー ファイルは、メソッドが wchar を必要としていることを示します。これは、ヘッダー内の TCHAR をコンパイルすると wchar として解釈されるためです。これには、構造内で定義された TCHARS が含まれます。この動作を実際に確認しました。TCHAR バッファを割り当てて渡すと、wchar バッファがマルチバイト データでいっぱいになるため、ガベージが返されます。
私の質問は次のとおりです。これらのライブラリの両方を同じアプリケーションで使用するクリーンな方法はありますか? これらのライブラリの使用方法に何か問題があるのでしょうか?
c++ - TCHAR 配列に値を割り当てる方法
TCHAR
C++ コードに静的文字列を割り当てたい配列があります。
経由で初期文字列を設定しました
これですべてが正常に機能します。ただし、次のように2行に分割すると
バグが発生し、コンパイラ エラーが発生します。
エラー C2440: '=': 'const char [14]' から 'TCHAR [260]' に変換できません
TEXT()
関数は私がここでやりたいことを正確に行うべきではありませんか? TCHAR
指定された文字列をsに変換しますか? 2 つの行を一緒にすると、なぜ機能するのでしょうか? 機能させるには何を変更する必要がありますか?
私が遭遇した他の紛らわしいこと:
インターネットで検索したところ、 と と もあることが_T()
わかり_TEXT()
まし__T()
た__TEXT()
。それらは何のため?どの環境でどちらを使用すればよいですか?
c++ - C ++の可変長引数を使用する場合、_TCHAR*からchar*に変換するにはどうすればよいですか?
format_TCHAR*文字列といくつかのchar*文字列を可変長引数の関数に渡す必要があります。
したがって、次のように呼び出すことができます。
明らかに、簡単な修正はcharの代わりに_TCHARを使用することですが、残念ながらそのような贅沢はありません。
文字列をフォーマットできるように、これをva_startなどで使用する必要があります。
残念ながら、このエラーが発生するため、これを使用することはできません。
char*を_TCHAR*に変換する必要があると思いますが、どうすればよいでしょうか。
char - CA2Wを誤って使用するにはどうすればよいですか?
なぜこれが機能しないのか誰かに説明してもらえますか?
そして、代わりに私が何をすべきか教えてください。
私に平等なテキストを与える代わりに、それは私に与えています:
character-encoding - TCHAR 配列を char 配列に変換する
に変換する方法TCHAR[]
はchar[]
?
c++ - std ::wstringをTCHAR*に変換する方法は?
をに変換する方法std::wstring
はTCHAR*
?std::wstring.c_str()
を返すため、機能しませんwchar_t*
。
から、またはからwchar_t*
への行き方を教えてください。TCHAR*
std::wstring
TCHAR*
c - Unicodeバージョンの文字列を比較するためにstrcmpまたは_tcscmpを使用することをお勧めしますか?
Unicodeバージョンの文字列を比較するためにstrcmpまたは_tcscmpを使用することをお勧めしますか?
c++ - How do I convert a "pointer to const TCHAR" to a "std::string"?
I have a class which returns a typed pointer to a "const TCHAR". I need to convert it to a std::string but I have not found a way to make this happen.
Can anyone provide some insight on how to convert it?