用c语言:利用指针实现2个字符串的连接。不能用字符串函数,遍历使用指针
时间: 2023-06-20 08:03:39 浏览: 609
下面是用指针实现字符串连接的C语言代码:
```c
#include <stdio.h>
int main() {
char str1[100], str2[100];
char *p1 = str1, *p2 = str2;
int i = 0, j = 0;
printf("Enter the first string: ");
scanf("%s", str1);
printf("Enter the second string: ");
scanf("%s", str2);
// 将p1指针移动到字符串末尾
while (*p1 != '\0') {
p1++;
}
// 将p2指针指向p1所在位置
while (*p2 != '\0') {
*p1 = *p2;
p1++;
p2++;
}
// 将p1指针所在位置设置为字符串结尾
*p1 = '\0';
printf("Concatenated string: %s\n", str1);
return 0;
}
```
首先,我们定义了两个字符数组 `str1` 和 `str2`,并定义了两个指针 `p1` 和 `p2` 分别指向这两个数组的首字符。
然后,我们使用 `scanf` 函数输入两个字符串。
接着,我们使用 `while` 循环将 `p1` 指针移动到 `str1` 数组的末尾。
接下来,我们使用 `while` 循环将 `p2` 指针指向的字符逐个复制到 `p1` 指针所在位置,并将 `p1` 指针向后移动一个位置,直到 `p2` 指针指向的字符为字符串结尾。
最后,我们将 `p1` 指针所在位置设置为字符串结尾,并输出结果。
这样,我们就利用指针实现了两个字符串的连接。
阅读全文