标题:strcpy()的实现问题
只看楼主
howema
Rank: 1
等 级:新手上路
帖 子:336
专家分:0
注 册:2005-10-4
结帖率:50%
 问题点数:0 回复次数:1 
strcpy()的实现问题
#include<iostream>
#include<assert.h>
using namespace std;
char *strcpy(char *d, char *s);
int main()
{
char *a="hello";
char *b;
strcpy(b,a);
cout<<"a:"<<a<<endl;
cout<<"b:"<<b<<endl;
}
char *strcpy(char *d, char *s)
{
 
 assert((d!=NULL)&&(s!=NULL));
 char *t=d;
 while((*d++=*s++)!='\0')

 return t;
}

程序可以编译通过,但是运行的时候就出现段错误。请高手指教是什么问题!
搜索更多相关主题的帖子: strcpy 
2008-04-01 17:13
herolzx
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-9-25
得分:0 
char *b 没有初始化,少分号
#include<iostream>
#include<assert.h>
using namespace std;
char *strcpy(char *d, char *s);
int main()
{
char *a="hello";
char temp[1234]={0};
char *b = temp;
strcpy(b,a);
cout<<"a:"<<a<<endl;
cout<<"b:"<<b<<endl;
system("pause");
}
char *strcpy(char *d, char *s)
{

assert((d!=NULL)&&(s!=NULL));
char *t=d;
while( (*d++= *s++) != '\0');//看这里



return t;
}

[[it] 本帖最后由 herolzx 于 2008-4-1 17:39 编辑 [/it]]
2008-04-01 17:25



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




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

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