bcb6.0中有没有类似vb的StrReverse字符串倒转函数?
就是把“123456”转成“654321”,谢谢!
[解决办法]
#include <algorithm>
#include <string>
using namespace std;
int main(){
string str( "123456 ");
str.reverse();
cout < <str;
return 0;
}
[解决办法]
akirya(坏[其实偶不是什么所谓的坏人]) 不是已经写了吗? 用STL里的reverse函数.
对于std::string, 楼上已经写了:str.reverse().
对于AnsiString:
AnsiString S= "12345 ";
reverse(S.c_str(),S.c_str()+S.Length());
对于char*
char *s= "12345 ";
reverse(s,s+5);
[解决办法]
自己写也很简单
AnsiString str = "123 "
AnsiString str1;
for (int i = 1; i <= str.Length(); i++) {
str1 += str[str.Length() - i + 1];
}
[解决办法]
procedure strReverse(var S:String);
var
I:Integer;
Len:Integer;
tmpChar:Char;
begin
Len:=Length(s);
for I := 1 to Len div 2 do
begin
tmpChar:=S[I];
S[I]:=S[Len-(I-1)];
S[Len-(I-1)]:=tmpChar;
end;
end;
--------------------
void strReverse(AnsiString &S);
{
int I;
int Len;
char tmpChar;
Len=S.Length();
for (I = 1; I <= (Len / 2);I++)
{
tmpChar=S[I];
S[I]=S[Len+1-I];
S[Len+1-I]=tmpChar;
}
}
[解决办法]
汗,尽管这样子改,还是...多了个分号
void strReverse(AnsiString &S)
{
int I;
int Len;
char tmpChar;
Len=S.Length();
for (I = 1; I <= (Len / 2);I++)
{
tmpChar=S[I];
S[I]=S[Len+1-I];
S[Len+1-I]=tmpChar;
}
}
[解决办法]
有这样函数:strrev
#include <string.h>
ShowMessage(strrev( "123456 "));