| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 546 人关注过本帖
标题:请教关于字符串复制
取消只看楼主 加入收藏
meiling01
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-11-2
收藏
 问题点数:0 回复次数:4 
请教关于字符串复制
#include"stdio.h"
void copy_string(char *from,char *to)
{while ((*to=*from)!='\0')
{to++;from++;}

}

main()
{
char *a= "I am a teacher.";
char *b= "you are a student.";
printf("string_a=%s\nstring_b=%s\n",a,b);
copy_string(a,b);
printf("\nstring_a=%s\nstring_b=%s\n",a,b);
return 0;
}
我没有直接利用字符串函数,而是自己写了一个,没有错误了,却总是不能正确运行,请高手指点,谢谢!
搜索更多相关主题的帖子: 字符 
2006-12-05 15:19
meiling01
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-11-2
收藏
得分:0 
根据版主的提示,我改为:可是程序仍然不能运行阿!
#include"stdio.h"
void copy_string(char *from,char *to)
{ char *p,*q;
p=from;
q=to;
while ((*to=*from)!='\0')
{to++;from++;}
*to='\0';
from=p;to=q;
}

main()
{
char *a= "I am a teacher.";
char *b= "you are a student.";
printf("string_a=%s\nstring_b=%s\n",a,b);
copy_string(a,b);
printf("\nstring_a=%s\nstring_b=%s\n",a,b);
return 0;
}
2006-12-05 15:53
meiling01
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-11-2
收藏
得分:0 
请问版主:
我编的程序有何问题呢,恳请您指点!谢谢您。
2006-12-05 16:14
meiling01
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-11-2
收藏
得分:0 
请问版主:我程序改成这样了:
#include"stdio.h"
void copy_string(char *from,char *to)
{
int i=0;
while ((*(to+i)=*(from+i))!='\0')
{
i++;
}
*(to+i)='\0';
}
main()
{
char a[100]= "I am a teacher.";
char b[100]= "you are a student.";
printf("string_a=%s\nstring_b=%s\n",a,b);
copy_string(a,b);
printf("\nstring_a=%s\nstring_b=%s\n",a,b);
return 0;
}
运行时得到了正确结果阿!谢谢两位版主的指点!谢谢!

[此贴子已经被作者于2006-12-5 16:25:55编辑过]

2006-12-05 16:19
meiling01
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-11-2
收藏
得分:0 
多亏楼上版主的提醒,我知道了,又增深了对指针的理解。谢谢。
2006-12-05 16:39
快速回复:请教关于字符串复制
数据加载中...
 
   



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

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