public member function
size_type copy (charT* s, size_type len, size_type pos = 0) const;
Copy sequence of characters from string
Copies a substring of the current value of the basic_string object into the array pointed by s. This substring contains the len characters that start at position pos.
The function does not append a null character at the end of the copied content.
- Pointer to an array of characters.
The array shall contain enough storage for the copied characters.
- Number of characters to copy (if the string is shorter, as many characters as possible are copied).
- Position of the first character to be copied.
If this is greater than the string length, it throws out_of_range.
Note: The first character in the basic_string is denoted by a value of 0 (not 1).
The number of characters copied to the array pointed by s. This may be equal to len or to length()-pos (if the string value is shorter than pos+len).
Member type size_type is an unsigned integral type.
int main ()
std::string str ("Test string...");
std::size_t length = str.copy(buffer,6,5);
std::cout << "buffer contains: " << buffer << '\n';
Linear in the number of characters copied.
The object is accessed.
Strong guarantee: if an exception is thrown, there are no changes in the basic_string.
If s does not point to an array long enough, it causes undefined behavior.
If pos is greater than the string length, an out_of_range exception is thrown.