std::wcscpy (3) - Linux Manuals

std::wcscpy: std::wcscpy

NAME

std::wcscpy - std::wcscpy

Synopsis


Defined in header <cwchar>
wchar_t *wcscpy( wchar_t *dest, const wchar_t *src );


Copies the wide string pointed to by src (including the terminating null wide character) to wide character array pointed to by dest.
If the strings overlap, the behavior is undefined.

Parameters


dest - pointer to the wide character array to copy to
src - pointer to the null-terminated wide string to copy from

Return value


dest

Example


// Run this code


  #include <iostream>
  #include <cwchar>
  #include <memory>
  #include <clocale>


  int main()
  {
      const wchar_t* src = L"犬 means dog";
  // src[0] = L'狗'; // can't modify string literal
      auto dst = std::make_unique<wchar_t[]>(std::wcslen(src)+1); // +1 for the null
      std::wcscpy(dst.get(), src);
      dst[0] = L'狗';
      std::setlocale(LC_ALL, "en_US.utf8");
      std::wcout.imbue(std::locale(""));
      std::wcout << src << '\n' << dst.get() << '\n';
  }

Output:


  犬 means dog
  狗 means dog

See also


        copies a certain amount of wide characters from one string to another
wcsncpy (function)
        copies a certain amount of wide characters between two non-overlapping arrays
wmemcpy (function)
        copies one string to another
strcpy (function)