鱼C论坛

 找回密码
 立即注册
查看: 937|回复: 3

为什么会报错

[复制链接]
发表于 2023-12-27 21:44:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
#include <string.h>

void my_strcat(char *src,char *dst)
{
    int n=strlen(src);
    int i=0;
    while (*(dst+i)!='\0')
    {
        *(src+n+i)=*(dst+i);
        // src[n+i]=dst[i]
        i++;
    }
    *(src+n+i)=0;


    

}


int mian()
{
    char str1[128]="hello";   //实现字符串的追加
    char str2[128]="123456";
    my_strcat(str1,str2);
    printf("%s\n",str1);

}
没有找出来错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-27 21:44:39 | 显示全部楼层
这段代码存在一些错误,让我们来逐个解决。

1. 缺少头文件
你的代码中没有包含所需的头文件。为了使用 strlen() 和 printf() 函数,你需要引入相应的头文件。
#include <stdio.h>#include <string.h>
2. 字符串的声明和初始化
在 C 语言中,字符串是以字符数组的形式存储的。你需要用字符数组来声明和初始化字符串,而不是使用字符指针。
char str1[] = "hello";char str2[] = "123456";
或者,你可以使用指针方式来声明字符串并分配内存。
char* str1 = "hello";char* str2 = "123456";
请注意,这两种方式在使用时稍有不同。

3. 输入参数修改
在函数 my_strcat() 中,你使用了 char* 来表示输入参数 src 和 dst。然而,当你调用这个函数时,你传递的是指向字符数组的指针,而不是字符指针。因此,将这两个参数改为 char 数组指针类型。
void my_strcat(char* src, char* dst)
4. 主函数拼写错误
将 `int mian()` 修改为 `int main()`。

综上所述,修正后的代码如下:
#include <stdio.h>#include <string.h>void my_strcat(char* src, char* dst){    int n = strlen(src);    int i = 0;    while (*(dst + i) != '\0')    {        *(src + n + i) = *(dst + i);        i++;    }    *(src + n + i) = '\0';}int main(){    char str1[] = "hello";    char str2[] = "123456";    my_strcat(str1, str2);    printf("%s\n", str1);    return 0;}
这段代码现在应该能够正确运行,并输出 "hello123456"。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-27 23:45:34 | 显示全部楼层
本帖最后由 jackz007 于 2023-12-27 23:47 编辑

        唯一的错误在第 22 行:
int mian()              // 【错误】:主函数是 "main()",不是 "mian()"
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-28 00:18:51 | 显示全部楼层
本帖最后由 Husj0711 于 2023-12-28 00:20 编辑

mian  -->  main

手敲快了是这样的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 08:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表