这道题要求设计一个名为 stringcopy 的 void 函数,将字符数组 b 中的字符串复制到数组 a 中(不能使用 C++ 的库函数 strcpy)。需要编写完整的程序并进行测试。
时间: 2024-05-14 14:18:51 浏览: 73
随堂练习-第 8 章:数组与字符串
好的,我可以帮你写出这个函数的代码。下面是示例代码:
```c++
#include <iostream>
void stringcopy(char a[], const char b[]) {
int i = 0;
while (b[i] != '\0') {
a[i] = b[i];
i++;
}
a[i] = '\0';
}
int main() {
char a[100];
const char b[] = "Hello, world!";
stringcopy(a, b);
std::cout << a << std::endl; // 输出 "Hello, world!"
return 0;
}
```
在这个示例代码中,我们定义了一个名为 `stringcopy` 的函数,它有两个参数:`a` 和 `b`,分别表示目标字符数组和源字符数组。在函数体中,我们使用了一个 `while` 循环,将源字符数组中的每个字符逐一复制到目标字符数组中,直到遇到字符串结束符 `\0`。注意,在复制完所有字符后,我们需要手动在目标字符数组的末尾添加一个字符串结束符。
在主函数中,我们首先定义了一个大小为 100 的字符数组 `a`,然后将字符串常量 `"Hello, world!"` 赋值给字符数组 `b`。接着,我们调用 `stringcopy` 函数,将字符串常量中的内容复制到字符数组 `a` 中。最后,我们输出字符数组 `a` 的内容,以检验复制结果是否正确。
希望这个示例代码对你有所帮助!
阅读全文