std::strcpy

< cpp‎ | string‎ | byte
定义于头文件 <cstring>
char* strcpy( char* dest, const char* src );

复制 src 所指向的字符串,包含空终止符,到首元素为 dest 所指向的字符数组。

dest 数组不够大则行为未定义。若字符串重叠则行为未定义。

参数

dest - 指向要写入的字符数组的指针
src - 指向复制来源的空终止字节字符串的指针

返回值

dest

示例

#include <iostream>
#include <cstring>
#include <memory>
 
int main()
{
    const char* src = "Take the test.";
//  src[0] = 'M'; // 不能修改字符串字面量
    auto dst = std::make_unique<char[]>(std::strlen(src)+1); // 为空终止符 +1
    std::strcpy(dst.get(), src);
    dst[0] = 'M';
    std::cout << src << '\n' << dst.get() << '\n';
}

输出:

Take the test.
Make the test.

参阅

复制来自一个字符串的一定量字符给另一个
(函数)
复制一个缓冲区到另一个
(函数)