今天我编了一个小程序以完成C语言中的字符串连接函数“strcat”的功能,于是想到了指针来实现。但最后程序的运行结果是导致VC++自动关闭。我想了半天没看出错误的地方,听说论坛的高手都很热心,所以就来求助各位。希望各位高手能帮我找到错误的地方。以下就是程序的代码:
main()
{
char a[22]={"hoello!"},b[15]={how do you do?},*p=a,*q=b;
int i;
for(i=0;i<

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Mackenzie

    20人对此回答表示赞同

    自己对照看一下。
    main()
    {
    char a[22]={"hoello!"},b[15]={"how do you do?"},*p=a,*q=b;
    int i;
    for(i=0;i<15;i++)
    *(p+i+6)=*(q+i);
    printf("%s\n%s\n",a,p);

    }
    展开
    20
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • 马克Mak

    19人对此回答表示赞同

    首先你的printf("%s",a[22]);肯定报错
    打印后面接数组名,a[22]数组访问越界;
    应该printf("%s\n",a);
    还有你的"hoello!"有7位,你在传值的时候*(p+i+6)=*(q+i); //i=0时,*(p+i+6)= "!",也就是说你把‘!’ 这个字符覆盖了,用一个strlen(a)就不用担心这种问题了。
    main()
    {
    展开
    19
    0回复
    发布于 5年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部