std::strncpy

来自cppreference.com
< cpp‎ | string‎ | byte
在标头 <cstring> 定义
char* strncpy(char* dest, constchar* src, std::size_t count );

复制 src 所指向的字节字符串的至多 count 个字符(包含终止空字符)到 dest 所指向的字符数组。

若在复制整个字符串 src 前抵达 count,则产生的字符数组不是空终止的。

若在复制来自 src 的终止空字符后未抵达 count,则写入额外的空字符到 dest,直至写入总共 count 个字符。

若字符串重叠,则行为未定义。

目录

[编辑]参数

dest - 指向要复制到的字符数组的指针
src - 指向作为复制来源的字节字符串的指针
count - 要复制的最大字符数

[编辑]返回值

dest

[编辑]示例

#include <cstring>#include <iostream>   int main(){constchar* src ="hi";char dest[6]={'a', 'b', 'c', 'd', 'e', 'f'}; std::strncpy(dest, src, 5);   std::cout<<"dest 的内容为: ";for(char c : dest){if(c)std::cout<< c <<' ';elsestd::cout<<"\\0"<<' ';}std::cout<<'\n';}

输出:

dest 的内容为: h i \0 \0 \0 f

[编辑]参阅

复制字符串给另一个
(函数)[编辑]
复制一个缓冲区到另一个
(函数)[编辑]
strncpy 的 C 文档
close