社区
C语言
帖子详情
如何实现不用strcpy函数复制字符串呀
xyj200588
2007-01-11 07:41:55
不用strcpy函数如何实现字符串的复制,大家可以帮助我提供一些程序思想和技术指导。
谢谢
...全文
1535
15
打赏
收藏
如何实现不用strcpy函数复制字符串呀
不用strcpy函数如何实现字符串的复制,大家可以帮助我提供一些程序思想和技术指导。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shencyx
2007-01-12
打赏
举报
回复
to steedhorse(晨星)
for(int i=0;str2[i]!='0';i++)??
写错了.应该改成
for(int i=0;str2[i]!=0;i++) 或for(int i=0;str2[i]!='\0';i++)??
这才对??
jefferycc
2007-01-12
打赏
举报
回复
cpystr(char *pss,char *pds){
while(*pds++=*pss++);
}
main(){
char *pa="CHINA",b[10],*pb;
pb=b;
cpystr(pa,pb);
printf("string a=%s\nstring b=%s\n",pa,pb);
}
pyrophile
2007-01-12
打赏
举报
回复
看到这个题目就立刻想到了while(*des ++ = *src ++)这个经典的式子,
Brian W.kernighan和Dennis M.Ritchie在C程序设计语言中提到过,
呵呵,简直是条件反射!
晨星
2007-01-12
打赏
举报
回复
在for里定义的i外面访问不了。除非你用VC6。- -b
int i;
for(i = 0; str1[i] != '\0'; ++i)
;//注意这个空语句。
这时,i就等于字符串的长度。
也可以用指针运算。
const char* p = str1;
while(*p++)
;
int len = p - str1 - 1;
晨星
2007-01-11
打赏
举报
回复
To:bargio_susie()
我那个s2是指前面定义的char s2[16],这里只是赋第一个字节。
To:shencyx(终有一天变成牛人..)
差不多,但int最好定义在for之外。
shencyx
2007-01-11
打赏
举报
回复
for(int i=0;i<length;i++)
str1[i] = str2[i];
不用strlen()怎样知道长度啊?是不是
for(int i=0;str2[i]!='0';i++)??
bargio_susie
2007-01-11
打赏
举报
回复
弱弱的问下:
(5)
s2[0] = '\0';
strcat(s2, s1);
这个也行么??s2[0]空间是不是不够???
lockhall
2007-01-11
打赏
举报
回复
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL));
char *address = strDest;
while( (*strDest++ = * strSrc++) != ‘\0’ )
NULL ;
return address ;
}
晨星
2007-01-11
打赏
举报
回复
还没听明白啊,楼主是不是还没搞清楚C语言中的字符串是啥啊。:)
方法有很多,比如,对于:
char* s1 = "Hello World";
char* s2[16];
不用strcpy,也有另外好多方法可以实现把s1的内容拷贝到s2中,比如:
(1)
int len = strlen(s1);
for(int i = 0; i < len; ++i) {
s2[i] = s1[i];
}
(2)
int len = strlen(s1);
memcpy(s1, s2, len + 1);
(3)
sprintf(s2, "%s", s1);
(4)
char* p = s2;
char* q = s1;
while(*p++ = *q++)
;
(5)
s2[0] = '\0';
strcat(s2, s1);
blackmurder
2007-01-11
打赏
举报
回复
for(int i=0;i<length;i++)
str1[i] = str2[i];
xyj200588
2007-01-11
打赏
举报
回复
明白大家的指点,但是具体应该怎么样来写,还是有些不明白
kouzhongling
2007-01-11
打赏
举报
回复
memcpy
DonaldKnuth
2007-01-11
打赏
举报
回复
sprintf 或 memcpy ,呵呵
晨星
2007-01-11
打赏
举报
回复
while(*dest++ = *src++);
晨星
2007-01-11
打赏
举报
回复
自已手工拷贝呗,相当于自己实现了strcpy。
c语言
不用
strcpy
复制
字符串
,C程序不使用
strcpy
()
复制
字符串
C程序不使用
strcpy
()
复制
字符串
在此示例中,您将学习不使用
strcpy
()
函数
即可
复制
字符串
。要理解此示例,您应该了解以下C语言编程主题:如您所知,
复制
字符串
的最佳方法是使用
strcpy
()
函数
。但是,在此示例中,我们将手动
复制
字符串
,而不使用
strcpy
()
函数
。不使用
strcpy
()
复制
字符串
#includeintmain(){chars1[100],s2[100],i;pr...
【C语言】
strcpy
函数
_
字符串
拷贝【详解】
文章目录前言一、认识并使用
strcpy
函数
二、模拟
实现
strcpy
函数
1.明确思路
实现
代码 前言
strcpy
,即string copy(
字符串
复制
)的缩写。
strcpy
是C++语言的一个标准
函数
,
strcpy
把含有’\0’结束符的
字符串
复制
到另一个地址空间。
strcpy
的头文件:string.h 一、认识并使用
strcpy
函数
1.库
函数
中
strcpy
函数
的声明 char*
strcpy
(char* destination,const char* source); 2.认识
strcpy
函数
第一
不使用
strcpy
()
函数
实现
字符串
复制
功能
不使用
strcpy
()
函数
实现
字符串
复制
功能
C语言 不使用
strcpy
函数
实现
字符串
复制
功能
字符串
复制
是
字符串
操作中比较常用的操作之一。该
函数
的功能为:把源字符数组中的
字符串
复制
到目的字符数组 中,
字符串
结束标志“\0”也一同
复制
。 源代码:
strcpy
函数
复制
字符串
strcpy
strcpy
函数
是
复制
字符串
的,拥有两个参数,一个是被
复制
字符串
,另一个是新
字符串
。 原型:void
strcpy
(char *des,char *src,int len) #include <stdio.h> #include <string.h> void myStrNCpy(char *des, char *src, int len) { int...
C语言
69,371
社区成员
243,081
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章