64,637
社区成员
发帖
与我相关
我的任务
分享
char * RadStrRev(const char * src)
{
char * p = new char[strlen(src)+1];
for(size_t i=0; i<strlen(src); ++i)
{
p[i] = src[strlen(src)-i-1];
}
p[strlen(src)] = '\0';
return p;
}
void main()
{
char * zip = "abcdefgh";
char * target = RadStrRev(zip);
printf("%s\n", target);
getchar();
delete [] target;
}
char* RevStr(char * StrSrc)
{
int len=strlen(StrSrc);
int length=len-1;
char TempStr;
for (int i=0;i<len/2;i++)
{
TempStr=StrSrc[i];
StrSrc[i]=StrSrc[length];
StrSrc[length--]=TempStr;
}
return StrSrc;
}
#include <iostream>
using namespace std;
char * RadStrRev(const char * src)
{
char * p = new char[strlen(src)+1];
int lentgh = strlen(src);
for(size_t i=0; i< lentgh;++i)
{
p[i] = src[lentgh-i-1];
}
p[lentgh] = '\0';
return p;
}
int main()
{
char * zip = "abcdefgh";
char * target = RadStrRev(zip);
printf("%s\n", target);
getchar();
delete [] target;
return 0;
}
char * RadStrRev(const char * src)
{
size_t len = strlen(src);
char * p = new char[len + 1];
const char* pe = str + len;
char * pp = p;
while (pe != src)
*pp++ = *--pe;
*pp = '\0';
return p;
}
char * RadStrRev(char * src)
{
char * p = src;
char* pe = str + strlen(str);
while (p + 1 < pe)
{
char ch = *p;
*p++ = *pe;
*pe-- = ch;
}
return src;
}
char * RadStrRev(const char * src)
{
int len = strlen(src);
char * p = new char[len + 1];
*std::reverse_copy(src, src + len, p) = '\0';
return p;
}