| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1775 人关注过本帖
标题:函数strcpy
只看楼主 加入收藏
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
收藏
 问题点数:0 回复次数:14 
函数strcpy

char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf ("%c",a[5]);

运行结果为何是f?想不通

搜索更多相关主题的帖子: strcpy 函数 
2004-08-01 10:33
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 

strcpy函数的使用方法是:strcpy(字符数组1,字符数组2) 将 字符数组2 的内容连接到 字符数组1 的后面,结果会放到 字符数组1 的地方去 所以 字符数组1 的长度一定要够长,否则会出错。

再回头看看你的程序,因为数组的下标是从0开始计算的,所以a[5]实际上在数组里面已经是第6个数据,也就是 f 。

a[0]='a' a[1]='b' a[2]='c' a[3]='d' a[4]='e' a[5]='f'

数组下标错0开始计算,这个按照我们喜欢从1开始记数的习惯一时间还不大适应,多多练习一下就会好了。


淘宝杜琨
2004-08-01 11:51
zazaking
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2004-7-23
收藏
得分:0 

在这个题目中如果用了strcpy以后把值赋给a的话,a数组的下标似乎不够大哦

2004-08-01 13:03
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
a数组的下标再大也是 f !

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2004-08-01 13:11
mingyue
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2004-5-13
收藏
得分:0 
strcpy()是字符串拷贝,不是连接。

2004-08-01 15:25
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 

差不多,因为连接比较形象点 ["abcdef" 连接 "ABC"] 总比 [把"ABC" 拷贝到"abcdef"的后面] 要形象得多吧~~~不管怎么说b的内容都将保持不变


淘宝杜琨
2004-08-01 15:57
mingyue
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2004-5-13
收藏
得分:0 
错,差远了。字符串拷贝并不是拷到字符串a的后面,而是覆盖了字符串a的前n个字符(字符串b的长度)。
这里假如a的长度够长,字符串拷贝strcpy(a,b)得到的结果是 ABC ef
而字符串连接strcat(a,b)得到的结果是 abcdefABC

2004-08-01 20:37
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
收藏
得分:0 
谢谢版主,也以样谢谢神vLinux飘飘兄,经常为我解答问题,真的很感谢你

C语言让我感爱到了计算机的乐趣 目前目标:程序员
2004-08-01 21:59
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
收藏
得分:0 

运行下面的程序段,输出结果是 char s1[10]="abcd",s2[10]="efg",s3[]="hi"; strcat (strcpy(s2,s3),s1); puts (s2); 答案是hiabcd strcpy(s2,s3)为hi\0 strcat (strcpy(s2,s3),s1)就为hiabcd是这样理解的吗?


C语言让我感爱到了计算机的乐趣 目前目标:程序员
2004-08-01 22:00
mingyue
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2004-5-13
收藏
得分:0 
是这样的。

2004-08-01 22:34
快速回复:函数strcpy
数据加载中...
 
   



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

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