- string[meta header]
- std[meta namespace]
- char_traits[meta class]
- function[meta id-type]
static char_type* copy(char_type* s1,
const char_type* s2,
std::size_t n); // (1) C++03
static constexpr char_type* copy(char_type* s1,
const char_type* s2,
std::size_t n); // (1) C++20
文字列s1
に文字列s2
をコピーする。
範囲[s1, s1+n)
と範囲[s2, s2+n)
が重なっていないこと。
範囲[0, n)
の各i
について、assign
(s1[i], s2[i])
を実行する。
コピー完了後のs1
を返す。
線形時間
#include <iostream>
#include <string>
int main()
{
const std::size_t n = 5 + 1;
char s[n] = "abcde";
char result[n];
std::char_traits<char>::copy(result, s, n);
std::cout << result << std::endl;
}
- copy[color ff0000]
abcde