マルチバイト (UTF) 文字列を Widechar 文字列に変換しようとしていますが、mbsnrtowcs は常に失敗します。入力文字列と予想される文字列は次のとおりです。
char* pInputMultiByteString = "A quick brown Fox jumps \xC2\xA9 over the lazy Dog.";
wchar_t* pExpectedWideString = L"A quick brown Fox jumps \x00A9 over the lazy Dog.";
特殊文字は著作権記号です。
Windows の MultiByteToWideChar ルーチンを使用すると、この変換は正常に機能しますが、その API は Linux では使用できないため、mbsnrtowcs を使用する必要があります。これは失敗しています。他のキャラクターも試してみましたが、いつも失敗します。唯一の期待は、ASCII ベースの入力文字列のみを使用すると、mbsnrtowcs が正常に動作することです。私は何を間違っていますか?