字符串右移函数

来源:互联网 发布:数据库开发前景知乎 编辑:程序博客网 时间:2024/05/16 04:22
  1. 编写一个函数,作用是把一个 char 组成的字符串循环右移 n 个。比如原来是“abcdefghi”
  2. 如果 n=2,移位后应该是“hiabcdefgh” 
  3. 分析:将字符串相加如:abcdefghi----》abcdefghiabcdefghi。这样可以解决右移次数较少的情况。
  4. 代码如下:
    char* rightloopmove(char *p,unsigned int steps,int n){for(int i=steps,j=0;j<n;i++,j++){p[j]=p[i];}p[n]='\0';return p;}int main(){char str[]="acdrfhj";int num=strlen(str);memcpy(str+7,str,7);str[14]='\0';rightloopmove(str,2,num);cout<<str;system("pause");return 0;}
    对于次数较大的情况,我还会跟进,谢谢。
0 0