C语言的问题(新手提问)

xadm1986 2010-06-09 09:34:03
帮忙看一下这个程序问题出在哪?
#include "stdio.h"
int main()
{
char *a = "abcd";
char *b = "1234";
strcpy1(a, b);
return 0;
}
void strcpy1(char *dest, char *src)
{
dest = src;
}

编译的时候报错:
"strcpy1.c", line 9.6: 1506-343 (S) Redeclaration of strcpy1 differs from previous declaration on li
ne 6 of "strcpy1.c".
"strcpy1.c", line 9.6: 1506-050 (I) Return type "void" in redeclaration is not compatible with the p
revious return type "int".
...全文
89 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xadm1986 2010-06-09
  • 打赏
  • 举报
回复
谢谢大家~~~懂了
z569362161 2010-06-09
  • 打赏
  • 举报
回复
strcpy就这么简单?????如果就这么一句就能实现还有必要定义一个库函数吗

就是这么简单。
z569362161 2010-06-09
  • 打赏
  • 举报
回复
#include "stdio.h"
void strcpy1(char **dest, char **src)
{
*dest =*src;
}


int main()
{
char *a = "abcd";
char *b = "1234";
strcpy1(&a,&b);
puts(a);
return 0;
}


通过2级指针
killernan 2010-06-09
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 vanchristin 的回复:]
C/C++ code

#include "stdio.h"
void strcpy1(char *dest, char *src);
int main()
{
char *a = "abcd";
char *b = "1234";
strcpy1(a, b);
return 0;
}
void strcpy1(char *dest, char *src)
{
……
[/Quote]
strcpy就这么简单?????如果就这么一句就能实现还有必要定义一个库函数吗
vanchristin 2010-06-09
  • 打赏
  • 举报
回复

#include "stdio.h"
void strcpy1(char *dest, char *src);
int main()
{
char *a = "abcd";
char *b = "1234";
strcpy1(a, b);
return 0;
}
void strcpy1(char *dest, char *src)
{
dest = src;
}

不过这样还是达不到你想要的字符串复制的效果
huanmie_09 2010-06-09
  • 打赏
  • 举报
回复

#include "stdio.h"

char *strcpy1(char *dest, char *src); //先进行声明

int main()
{
char *a = "abcd";
char *b = "1234";
a = strcpy1(a, b); //通过返回值的形式获取指针a
puts(a);
return 0;
}
char *strcpy1(char *dest, char *src) //返回值类型改一下
{
dest = src;
return dest;
}
冻结 2010-06-09
  • 打赏
  • 举报
回复

#include "stdio.h"
int main()
{
char *a = "abcd"; // 要用数组char a[xx];
char *b = "1234";
strcpy1(a, b);
return 0;
}
void strcpy1(char *dest, char *src)
{
dest = src; // 要按字符依次拷贝。
}
lirg8405 2010-06-09
  • 打赏
  • 举报
回复
void strcpy1(char *dest, char *src)
{
dest = src;
}
把这个移到前面,不会报错,但是你这个函数不能实现你想要的功能
wade_2003 2010-06-09
  • 打赏
  • 举报
回复
函数要先有声明,才能用的,要不就将函数放到前面去
wade_2003 2010-06-09
  • 打赏
  • 举报
回复

#include "stdio.h"
void strcpy1(char *dest, char *src)
{
dest = src;
}


int main()
{
char *a = "abcd";
char *b = "1234";
strcpy1(a, b);
return 0;
}

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧