View Problem

Reverse the characters in a string

Given the string "reverse me", produce the string "em esrever"
DiskEdit
ruby
puts "reverse me".reverse
ExpandDiskEdit
erlang
Reversed = lists:reverse("reverse me"),
ExpandDiskEdit
erlang
Reversed = revchars("reverse me"),
ExpandDiskEdit
csharp 3.0
var str = "reverse me";
Console.WriteLine(new String(str.Reverse().ToArray()));
ExpandDiskEdit
cpp C++/CLI .NET 2.0
String^ s = "reverse me";
array<Char>^ sa = s->ToCharArray();
Array::Reverse(sa);
String^ sr = gcnew String(sa);
ExpandDiskEdit
cpp
std::string s = "reverse me";
std::reverse(s.begin(), s.end());
ExpandDiskEdit
cpp
std::string s = "reverse me";
std::string sr(s.rbegin(), s.rend());
ExpandDiskEdit
cpp
std::string s = "reverse me";
std::swap_ranges(s.begin(), (s.begin() + s.size() / 2), s.rbegin());
DiskEdit
go
package main;
import "utf8";
import "fmt";

func reverse(s string) string {
o := make([]int, utf8.RuneCountInString(s))
i := len(o)
for _, c := range s {
i--
o[i] = c
}
return string(o)
}

func main() {
fmt.Print(reverse("reverse me"));
}
ExpandDiskEdit
go go1
func Reverse(s string) string {
runes := []rune(s)
for i, j := 0, len(runes)-1; i < j; i, j = i+1, j-1 {
runes[i], runes[j] = runes[j], runes[i]
}
return string(runes)
}

Submit a new solution for ruby, erlang, csharp, cpp ...
There are 16 other solutions in additional languages (clojure, fantom, fsharp, groovy ...)