std::basic_string::copy(3)

NAME
std::basic_string::copy - std::basic_string::copy

Synopsis
   size_type copy( CharT* dest, size_type count, size_type pos = 0 ) (until C++20)
   const;
   constexpr size_type copy( CharT* dest, size_type count, size_type pos (since C++20)
   = 0 ) const;
   Copies a substring [pos, pos+count) to character string pointed to by dest. If the
   requested substring lasts past the end of the string, or if count == npos, the
   copied substring is [pos, size()). The resulting character string is not
   null-terminated.
   If pos > size(), std::out_of_range is thrown.

Parameters
   dest - pointer to the destination character string
   count - length of the substring
   pos - position of the first character to include

Return value
   number of characters copied

Exceptions
   std::out_of_range if pos > size().

Complexity
   linear in count

Example
// Run this code
 #include <string>
 #include <iostream>
 int main()
 {
   std::string foo("quuuux");
   char bar[7]{};
   foo.copy(bar, sizeof bar);
   std::cout << bar << '\n';
 }

Output:
 quuuux

See also
   substr returns a substring
           (public member function)
   copy copies characters
   (C++17) (public member function of std::basic_string_view<CharT,Traits>)
   copy copies a range of elements to a new location
   copy_if (function template)
   (C++11)
   memcpy copies one buffer to another
           (function)