需要帮助将一个wchar_t附加到另一个!C++

2 c++

我尝试过wcscat()但是我得到了运行时访问冲突.

wchar_t* a = L"aaa";
wchar_t* b = L"bbb";
wchar_t* c;
c = wcscat(a, b);
Run Code Online (Sandbox Code Playgroud)

有人能告诉我这里有什么问题吗?或者另一种解决我问题的方法?谢谢

Sam*_*war 6

wcscat不会创建一个新字符串 - 它只是附加ba.因此,如果您想确保不会导致运行时访问冲突,则需要确保b在结尾处有空间a.在上面的情况:

wchar_t a[7] = L"aaa";
wchar_t b[]  = L"bbb";
wchar_t* c;
c = wcscat(a, b);
Run Code Online (Sandbox Code Playgroud)

您仍然可以从函数中获取返回值,但它只会返回a.