問題タブ [wchar]
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++ - WinAPI の sz および pwsz プレフィックス
WinAPI の CHAR 文字列と WCHAR 文字列のハンガリー語表記プレフィックスについて、少し混乱しています。CHAR 文字列を使用する場合、通常、次のようなプレフィックスが使用されます。
ゼロで終わる文字列 szString があるので、すべて問題ありません。しかし、WCHAR 文字列を使用する場合、通常は次のようなプレフィックスが使用されます。
これは、ゼロで終わるワイド文字列へのポインターを表します... しかし、私たちの型はこのようには見えません。ゼロで終わるワイド文字列へのポインターは、WCHAR** または PWSTR* です。私が間違っている?CHAR 文字列の場合は sz で、WCHAR 文字列の場合は wsz ではなく、なぜ pwsz なのですか?
c++ - C++ の LPWSTR、wchar_t*、および unsigned short ポインター
これらのタイプがすべて同じかどうかを理解しようとしています。私はwindows.hからこの関数を持っています: モードで、それは a を返しGetCommandLine()
ます。ここで、さらに深く掘り下げると、それが(16 バイト) または(32 バイト)であることがわかります。それでも、私がこれを行うと:UNICODE
LPWSTR
LPWSTR
wchar_t*
wchar_t
unsigned short
unsigned long
次のエラーが表示されます。
初期化で 'LPWSTR {aka wchar_t*} から 'short unsigned int*' に変換できません
それで、コンパイラは同じロジックに従って、それが最後にあるのか、それとも私が間違っているのかを見つけますLPWSTR
かunsigned short*
?
kernel-module - VxWorks のダウンロード可能なカーネル モジュールでのワイド文字のサポート
Linux から VxWorks DKM へのプロジェクトの移植に取り組んでいます。しかし、私は問題に直面しています: Linux では、このプロジェクトの一部でワイド文字とワイド文字関数 ( wcslen() や mbrtowc() など) が使用されており、VxWorks DKM はワイド文字 (およびワイド文字関数) をサポートしていないため.. .) 私は立ち往生しています。私の質問は次のとおりです。VxWorks DKM で使用できるワイド文字に代わるものはありますか?
ワイド文字は VxWorks の RTP モードでサポートされていますが、DKM ではサポートされていません。
c++ - 配列ポインタをループしていますか?
私はC++の経験があまりなく、いくつかのコードを読んでいて、これがどのように理にかなっているのか知りたいと思っていました...
wchar の配列へのポインターが表示されます。どうすればそれをループできますか? 配列全体をループしますか?
コード全体は次のとおりです。
c - -fshort-wchar を使用すると wcslen が不正な長さを返す
ソースコード:
これを でコンパイルした結果g++ -fshort-wchar xxx.cpp -o xxx
が得られます。15
なんで?