标题:请帮我检查一下这个程序有什么错误。Thank you!
只看楼主
happysteven
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-5-12
结帖率:66.67%
已结贴  问题点数:10 回复次数:2 
请帮我检查一下这个程序有什么错误。Thank you!
编写将两个字符串连接起来的函数,其参数为两个字符型指针
#include <iostream.h>
#include <string.h>
void s(char *p,char *q);
void main ()
{
    char a[]="C++",b[]="program";
    char *p=&a,*q=&b;
    s(*p,*q);
}
void s(char *p,char *q)
{
    int i,j,a,b;
    char c[20];
    a=strlen(p);
for(i=0;i<a;i++)
c[i]=*p;
b=strlen(q);
for(j=a;i<b+a;j++)
c[i]=*q;
cout<<c[20]<<endl;
}


[ 本帖最后由 happysteven 于 2010-6-9 16:06 编辑 ]
搜索更多相关主题的帖子: Thank 检查 
2010-06-09 15:51
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
得分:10 
程序代码:
#include <iostream.h>
#include <string.h>
void s(const char *p,const char *q);
void main ()
{
    char a[]="C++",b[]="program";
    char *p=a,*q=b;//这行有修改,数组名就是地址
    s(p,q);//这里要传递的是地址
}
void s(const char *p,const char *q)
{
    int i;
    char c[20];
    for(i=0;*p;i++,p++)
    c[i]=*p;
    for(;*q;i++,q++)
    c[i]=*q;
    c[i]='\0';
    cout<<c<<endl;
}

南国利剑
2010-06-09 17:03
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
得分:0 
我帮你修改了一下,问题不少,
自定义函数里头也有修改,你自己对照着看看.
你自己试试,看能不能通过?
我现在没有开发环境,没有帮你试.

南国利剑
2010-06-09 17:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-309742-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.190922 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved