将字符串s1复制为字符串s2
时间: 2023-08-18 19:07:01 浏览: 71
可以使用strcpy函数将字符串s1复制到字符串s2中,示例如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char s1[20] = "Hello, world!";
char s2[20];
strcpy(s2, s1);
printf("s1: %s\n", s1);
printf("s2: %s\n", s2);
return 0;
}
```
输出:
```
s1: Hello, world!
s2: Hello, world!
```
在上面的例子中,先定义了两个字符数组s1和s2,其中s1初始化为"Hello, world!"。然后使用strcpy函数将s1复制到s2中,最终输出s1和s2的值,可以看到它们的值相同。
相关问题
将字符串s1复制为字符串s2,用指针
可以使用指针来实现字符串的复制,具体过程如下:
```c
#include <stdio.h>
void string_copy(char *s1, char *s2) {
while (*s1 != '\0') { // 遍历s1字符串
*s2 = *s1; // 将s1的字符复制到s2
s1++; // 指向s1的下一个字符
s2++; // 指向s2的下一个字符
}
*s2 = '\0'; // 将s2的最后一个字符设为'\0'
}
int main() {
char s1[] = "hello";
char s2[10]; // 为s2分配内存空间
string_copy(s1, s2); // 复制s1到s2
printf("%s\n", s2); // 输出s2
return 0;
}
```
上述代码中,`string_copy`函数通过指针遍历`s1`字符串,并将每个字符复制到`s2`字符串中。最后在`s2`的末尾添加一个`\0`作为字符串的终止符。在`main`函数中,我们定义了`s1`和`s2`两个字符串,然后调用`string_copy`函数将`s1`复制到`s2`中,并输出`s2`字符串。
在c++中,将字符串s1复制为s2
在 C++ 中,可以使用 `strcpy()` 函数将字符串 `s1` 复制到另一个字符串 `s2` 中。示例代码如下:
```c++
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char s1[] = "Hello, world!";
char s2[100];
// 将 s1 复制到 s2 中
strcpy(s2, s1);
cout << "s1: " << s1 << endl;
cout << "s2: " << s2 << endl;
return 0;
}
```
运行结果:
```
s1: Hello, world!
s2: Hello, world!
```
需要注意的是,`strcpy()` 函数会复制整个字符串,包括字符串末尾的空字符。因此,目标字符串 `s2` 必须足够大,以容纳源字符串 `s1` 的内容和空字符。在上面的代码中,我定义了一个大小为 100 的字符数组 `s2`,以确保能够容纳 `s1` 的内容。