替换字符串
来源:互联网 发布:linux网络故障排查 编辑:程序博客网 时间:2024/04/29 22:19
1、将一串字符串中的空格转换成@#$.
void conver(char *buf,char *cbuf) //反着来{ int count,len,newlen,i; count =0; len = strlen(buf); for(i=0;i<len;i++) { if(buf[i] == ' ') count++; //计算空格数 } newlen = len + 2*count; //计算新的字符串长度 printf("len:%d,newlen:%d\n",len,newlen); for(i=len-1;i>=0;i--) { if(buf[i] == ' ') { cbuf[newlen - 1] = '$'; cbuf[newlen - 2] = '#'; cbuf[newlen - 3] = '@'; newlen = newlen -3; //缩尾 } else { cbuf[newlen -1] = buf[i]; newlen = newlen - 1; } }}void conver_zhen(char *buf,char *cbuf) //正着来{ int count,len,newlen,i; count =0; len = strlen(buf); for(i=0;i<len;i++) { if(buf[i] == ' ') count++; //计算空格数 } newlen = len + 2*count; //计算新的字符串长度 printf("len:%d,newlen:%d\n",len,newlen); count = 0; for(i=0;i<len;i++) { if(buf[i] == ' ') { cbuf[i+count] = '@'; cbuf[i+count+1] = '#'; cbuf[i+count+2] = '$'; count += 2; //加长 } else { cbuf[i+count] = buf[i]; } }}int main(){ char buf[30]={" 12 ff j k "}; char cbuf[50]; memset(cbuf,0,50); printf("pre: %s\n",buf); conver(buf,cbuf); //反着来 printf("cov: %s\n",cbuf); memset(cbuf,0,50); conver_zhen(buf,cbuf); //正着来 printf("cov: %s\n",cbuf); return 0;}运行结果:pre: 12 ff j klen:12,newlen:24cov: @#$12@#$ff@#$@#$j@#$k@#$len:12,newlen:24cov: @#$12@#$ff@#$@#$j@#$k@#$
0 0
- 字符串替换
- 字符串替换
- 替换字符串
- 字符串替换
- 替换字符串
- 字符串替换
- 字符串替换
- 字符串替换
- 替换字符串
- 字符串替换
- 字符串替换
- 字符串替换
- 字符串替换
- 字符串替换
- 替换字符串
- 字符串替换
- 字符串替换
- 字符串替换
- POJ3984 BFS 输出路径
- PhpStorm 注册码 PhpStorm10 PhpStorm9 PhpStorm8 JetBrains key
- android中view的两种更新机制
- poj1562 DFS/BFS连通块
- 基于NX的研发产品设计管理平台实现(十二)-图纸及文档管理
- 替换字符串
- 教你铜币帮助笔记本散热
- HP-UX之Samba设定(CIFS)
- 8.17 随想
- 如何识别高级的验证码
- [leetcode] 129. Sum Root to Leaf Numbers
- 两张图总结 Neutron 架构 - 每天5分钟玩转 OpenStack(74)
- poj-3617Best Cow Line(将字符串逆序排列 与原字符串作比较)
- Linux下安装及操作SQL数据库