当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ strncpy()用法及代码示例


C++ strncpy() 函数 C++ 中的strncpy() 函数将指定字节的字符从源复制到目标。

strncpy()原型

char* strncpy( char* dest, const char* src, size_t count );

strncpy() 函数接受三个参数:dest、src 和 count。它将最大计数字符从 src 指向的字符串复制到 dest 指向的内存位置。

如果 count 小于 src 的长度,则第一个 count 字符被复制到 dest 并且它不是以 null 结尾的。如果 count 大于 src 的长度,则将 src 中的所有字符复制到 dest 并添加额外的终止空字符,直到总共写入了 count 个字符。

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

它在<cstring> 头文件中定义。

参数:

  • dest:指向内容复制到的字符数组的指针。
  • src:指向从中复制内容的字符数组的指针。
  • count:要复制的最大字符数。

返回:

strncpy() 函数返回 dest,即指向目标内存块的指针。

示例:strncpy() 函数的工作原理

#include <cstring>
#include <iostream>

using namespace std;

int main()
{
    char src[] = "It's Monday and it's raining";
    char dest[40];

    /* count less than length of src */
    strncpy(dest,src,10);
    cout << dest << endl;

    /* count more than length of src */
    strncpy(dest,src,strlen(src)+10);
    cout << dest << endl;
    return 0;
}

运行程序时,输出将是:

It's Monday
It's Monday and it's raining

相关用法


注:本文由纯净天空筛选整理自 C++ strncpy()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。