介绍
在本实验中,你将学习如何在 C++ 中复制字符串。我们将使用字符串对象和 C 风格字符串来演示这一过程。
在本实验中,你将学习如何在 C++ 中复制字符串。我们将使用字符串对象和 C 风格字符串来演示这一过程。
导航到 ~/project
目录,并创建一个名为 main.cpp
的 C++ 文件。
cd ~/project
touch main.cpp
我们可以使用赋值运算符将一个字符串对象复制到另一个字符串对象。请参考以下代码:
#include <iostream>
#include <string>
using namespace std;
int main() {
string s1, s2;
cout << "Enter string s1: ";
getline(cin, s1);
s2 = s1;
cout << "s1 = " << s1 << endl;
cout << "s2 = " << s2;
return 0;
}
代码说明:
iostream
和 string
。s1
和 s2
。getline()
函数提示用户输入字符串 s1
,该函数会读取包含空格的整个字符串。s1
赋值给 s2
。s1
和 s2
。代码输出:
Enter string s1: Hello World!
s1 = Hello World!
s2 = Hello World!
我们将使用 cstring
库中的 strcpy()
函数来复制 C 风格字符串。请参考以下代码:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char s1[100], s2[100];
cout << "Enter string s1: ";
cin.getline(s1, 100);
strcpy(s2, s1);
cout << "s1 = " << s1 << endl;
cout << "s2 = "<< s2;
return 0;
}
代码说明:
iostream
和 cstring
。s1
和 s2
。s1
。getline()
函数,因为它仅适用于字符串对象,而不适用于 C 风格字符串。我们使用 cin.getline
,其中第一个参数是数组变量,第二个参数是要读取的数组的最大大小。cstring
中的 strcpy()
函数将字符串 s1
复制到 s2
。s1
和 s2
。代码输出:
Enter string s1: Hello World!
s1 = Hello World!
s2 = Hello World!
要在终端中运行代码,请在项目文件夹中打开终端并执行以下命令:
g++ main.cpp -o main
./main
该命令会编译 main.cpp
文件,并在同一目录下生成一个名为 main
的可执行文件。第二条命令会运行 main
文件,并在终端中输出结果。
本实验讨论了如何在 C++ 中使用字符串对象和 C 风格字符串来复制字符串。你了解到,对于字符串对象,可以使用赋值运算符;而对于 C 风格字符串,可以使用 cstring
中的 strcpy()
函数。通过遵循这些简单的步骤,你可以轻松地在 C++ 中复制字符串。