2

wchar_t の配列が欲しいです。

以下の作品:

char** stringArray;
int maxWords = 3;
stringArray = new char*[maxWords];
stringArray[0] = "I";
stringArray[1] = " Love ";
stringArray[2] = "C++"

しかし、これはしません

wchar_t ** wcAltFinalText;
wcAltFinalText = new wchar_t *[MAX_ALT_SOURCE];   // MAX_ALT_SOURCE = 4
wcAltFinalText[0] = L'\0';
wcAltFinalText[1] = L'\0';
wcAltFinalText[2] = L'\0';
wcAltFinalText[3] = L'\0';

エラーは発生しませんが、wcAltFinalText は不適切な ptr です

ヘルプとコメントは大歓迎です。

4

3 に答える 3

7

''の代わりに使用して""いるため、割り当てwcAltFinalText[0] = L'\0';は次と同等ですwcAltFinalText[0] = 0;

于 2011-03-14T12:37:59.180 に答える
2

さて、新しく作成された配列のすべての要素を null ポインターに設定しただけです ( L'\0'「空の文字列」ではなく「null 文字」であるため)。他に何が期待できますか? 次のコードと同じ効果があります。

wcAltFinalText[0] = 0;
wcAltFinalText[1] = 0;
wcAltFinalText[2] = 0;
wcAltFinalText[3] = 0;

また、Visual Studio は null ポインターを「bad ptr」として表示します。これは、そのようなポインターの背後にデータを配置できないことを意味します。

于 2011-03-14T12:36:45.043 に答える