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


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


在本教程中,我们将借助示例了解 C++ strcpy() 函数。

C++ 中的strcpy() 函数将字符串从源复制到目标。它在cstring 头文件中定义。

示例

#include <cstring>
#include <iostream>

using namespace std;

int main() {
  char src[] = "Hello Programmers.";
    
  // large enough to store content of src
  char dest[20];

  // copy the contents of src to dest    
  strcpy(dest,src);
  
  cout << dest;

  return 0;
}

// Output: Hello Programmers.

strcpy() 语法

用法:

strcpy( char* dest, const char* src );

参数:

strcpy() 函数采用以下参数:

  • dest- 指向内容被复制到的C-string
  • src- 指向复制内容的C-string 的指针

返回:

strcpy() 函数返回:

  • dest(指向目标的指针C-string)

strcpy() 原型

cstring 头文件中定义的strcpy() 原型为:

char* strcpy(char* dest, const char* src);

strcpy() 函数将 src 指向的 C-string 复制到 dest 指向的内存位置。空终止字符'\0' 也被复制。

请注意:

  • src 属于 const char* 类型。 const 关键字确保 src 指向的 C-string 不能被 strcpy() 修改。
  • dest 属于 char* 类型。 const 的缺失确保了 dest 指向的 C-string 可以被 strcpy() 修改。

strcpy() 未定义行为

的行为strcpy()不明确的如果:

  • dest 指针分配的内存不够大。
  • 琴弦重叠。

示例:C++ strcpy()

#include <cstring>
#include <iostream>

using namespace std;

int main() {
  char src[20] = "I am the source.";

  // large enough to store content of src
  char dest[30] = "I am the destination.";
    
  cout << "dest[] before copy: " << dest << endl;

  // copy contents of src to dest    
  strcpy(dest,src);

  cout << "dest[] after copy: " << dest;

  return 0;
}

输出

dest[] before copy: I am the destination.
dest[] after copy: I am the source.

相关用法


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