vc++ 6.0 编译链接都没有错 但是运行的时候出现程序已经停止工作的提示框
代码如下,跪求高人#include<iostream.h>char*strcpy1(char*dest,constchar*source);voidmain(){char...
代码如下,跪求高人
#include <iostream.h>
char * strcpy1(char * dest,const char * source);
void main()
{
char * a="hello";
char * b="abcde";
char * c=strcpy1(a,b);
cout<<c<<endl;
}
char * strcpy1(char * dest,const char * source)
{
int i=0,j=0;
for(;i<sizeof(source)/sizeof(char);i++)
{
dest[i]=source[j];
}
return dest;
}
------------------------
char * strcpy1(char * dest,const char * source)
{
int i=0;
for(;i<sizeof(source)/sizeof(char);i++)
{
dest[i]=source[i];
}
return dest;
}
代码改成这样以后还是这个问题 求解求解 展开
#include <iostream.h>
char * strcpy1(char * dest,const char * source);
void main()
{
char * a="hello";
char * b="abcde";
char * c=strcpy1(a,b);
cout<<c<<endl;
}
char * strcpy1(char * dest,const char * source)
{
int i=0,j=0;
for(;i<sizeof(source)/sizeof(char);i++)
{
dest[i]=source[j];
}
return dest;
}
------------------------
char * strcpy1(char * dest,const char * source)
{
int i=0;
for(;i<sizeof(source)/sizeof(char);i++)
{
dest[i]=source[i];
}
return dest;
}
代码改成这样以后还是这个问题 求解求解 展开
2016-12-18
展开全部
for(;i<sizeof(source)/sizeof(char);i++)
{
dest[i]=source[j];
}
这个里面j一直没j++,
应该是这样的
for(;i<source[j]!='\0';i++,j++)
{
dest[i]=source[j];
}
你的a、b需要用数组,而不是指针。
另外数组的长度和字符串的长度是两回事。
你的基本功不行
{
dest[i]=source[j];
}
这个里面j一直没j++,
应该是这样的
for(;i<source[j]!='\0';i++,j++)
{
dest[i]=source[j];
}
你的a、b需要用数组,而不是指针。
另外数组的长度和字符串的长度是两回事。
你的基本功不行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询