用C语言编写程序,将两个字符串连接起来,不要用strcat函数
时间: 2023-11-22 14:52:02 浏览: 166
可以用指针来实现字符串连接。
以下是一个简单的例子:
```c
#include <stdio.h>
void mystrcat(char *dest, const char *src) {
// 将 dest 指针移动到字符串末尾
while (*dest != '\0') {
dest++;
}
// 将 src 复制到 dest 的末尾
while (*src != '\0') {
*dest = *src;
dest++;
src++;
}
// 将字符串结束符添加到 dest 的末尾
*dest = '\0';
}
int main() {
char str1[100] = "Hello, ";
char str2[] = "world!";
mystrcat(str1, str2);
printf("%s\n", str1);
return 0;
}
```
输出:
```
Hello, world!
```
在上面的代码中,`mystrcat` 函数将 `src` 指向的字符串追加到 `dest` 指向的字符串的末尾。首先,它将 `dest` 指针移动到字符串末尾,然后将 `src` 复制到 `dest` 的末尾,最后添加字符串结束符到 `dest` 的末尾。
相关问题
C语言编写程序,定义任意两个字符串数据,将两个字符串连接起来,不要用strcat 函数,结果输出到屏幕查看结果
可以使用指针和循环实现字符串连接,示例代码如下:
```c
#include <stdio.h>
int main() {
char str1[] = "Hello";
char str2[] = "World";
char result[100]; // 存储结果的字符串数组,需要预设足够的长度
int i, j;
// 将 str1 复制到 result 中
for (i = 0; str1[i] != '\0'; i++) {
result[i] = str1[i];
}
// 将 str2 连接到 result 后面
for (j = 0; str2[j] != '\0'; j++) {
result[i + j] = str2[j];
}
result[i + j] = '\0'; // 结尾要加上字符串结束符
// 输出结果
printf("%s\n", result);
return 0;
}
```
输出结果为:
```
HelloWorld
```
编写一个程序,将两个字符串连接起来,不要用strcat函数。用C语言代码编写
好的,以下是用C语言代码编写一个将两个字符串连接起来的程序,不使用strcat函数:
```c
#include <stdio.h>
void my_strcat(char *str1, char *str2){
while(*str1){
str1++;
}
while(*str2){
*str1 = *str2;
str1++;
str2++;
}
*str1 = '\0';
}
int main()
{
char str1[50] = "Hello";
char str2[50] = " world!";
my_strcat(str1, str2);
printf("%s", str1);
return 0;
}
```
这个程序通过指针来实现字符串的连接。首先找到第一个字符串的结尾,然后遍历第二个字符串的每一个字符,并将其逐一拼接到第一个字符串的结尾,最后加上一个终止符。运行该程序将输出"Hello world!"。
阅读全文