计算机二级

3773考试网计算机等级考试计算机二级正文

C++反转字符串

来源:fjzsksw.com 2010-4-7 9:56:53

 

//与上一函数基本相似,只不过本函数使用是移位操作改变字符指针指向

  char* strrev3(const char* str)

  {

  char* tmp = new char[strlen(str) + 1];

  strcpy(tmp,str);

  char* ret = tmp;

  char* p = tmp + strlen(str) - 1;

  while (p > tmp)

  {

  *p ^= *tmp;

  *tmp++ ^= *p;

  *p-- ^= *tmp;

  }

  return ret;

  }

  //节省几步,直接给新建的字符数组赋反转的值,呵呵,简单明了,只不过循环多执行几次

  char* strrev4(const char* str)

  {

  char * temp = new char[strlen(str)];

  for(int i = 0; i <= strlen(str); i++)

  {

  temp[i] = str[strlen(str) - i -1];

  }

  return temp;

  }

 

上一页  [1] [2] [3] [4] 下一页

触屏版 电脑版
3773考试网 琼ICP备12003406号-1