三国群英传ol单机版,飞轮少年oad4,韩国童装daowafushi
今天初次遇到需要逆置字符串的题,该死的不让我用strrev,是时候学习一下了
所谓逆置,都一样,无论任何数据类型,都可以套用,此处为了偷懒,只处理字符数组
。。。。
最最偷懒的方法当然是用c++的
void strRev(char *s) //传入字符数组首地址 char *end = s + strlen(s) - 1; //取最后一个元素的地址 while( end > s) //头尾指针相遇 *end^=*s; //用位与的方式交换,完全可以忽略这种骚操作,多数时候没啥意义 *s^=*end; *end^=*s; end--; //头尾指针向中间移动 s++; } }
实现与上边相同,只是写的装逼点
void strRev(char *s) { char temp; for(char *end = s + strlen(s) - 1; end > s ; --end, ++s) { *end^=*s; *s^=*end; *end^=*s; } }
再有就是递归实现了
没意义,容易溢出,考试不敢用
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
如何在没有core文件的情况下用dmesg+addr2line定位段错误
用QT制作3D点云显示器——QtDataVisualization
网友评论