c语言简单问题

[复制链接]
查看11 | 回复3 | 2008-12-29 16:33:52 | 显示全部楼层 |阅读模式
strcpy(str+i,str+i+1)是什么意思。到底复制多少个值。?
谢谢

回复

使用道具 举报

千问 | 2008-12-29 16:33:52 | 显示全部楼层
strcpy(str+i,str+i+1);这个函数一共两个参数,并且两个都是字符指针,表示的意思都是字符串(指向字符串的首地址),像上述用法,假设str为“abcdefghi”, i= 2,那么str+i 表示 "cdefghi",str+i+1 表示“defghi”,表面意思就是将“defghi”覆盖在“cdefghi”,深层的意思显而易见就是将c这个字符从str中删除。...
回复

使用道具 举报

千问 | 2008-12-29 16:33:52 | 显示全部楼层
这个copy应该是不行的,strcpy(str1,str2);是指把src2所指由NULL结束的字符串复制到str1所指的字符数组中。strcpy(str+i,str+i+1)这个语句理论上讲,应该是将字符数组整体前移一位,但是strcpy必须有一个前提,strcpy(str1,str2),src1和str2所指内存区域不可以重叠...
回复

使用道具 举报

千问 | 2008-12-29 16:33:52 | 显示全部楼层
两个值,就是str+i和str+i+1...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行