C++ Using STL reverse
int main(int argc, char *argv[])
{
int a[] = { 4, 5, 6, 7 };
std::cout << "Int Array" << endl << "original: ";
for (auto e : a) std::cout << e;
std::cout << endl;
std::cout << "reverse: ";
std::reverse(std::begin(a), std::end(a));
for (auto e : a) std::cout << e;
std::cout << endl;
std::string name = "DRAGON";
std::cout << "String" << endl << "original: " << name << endl;
std::reverse(std::begin(name), std::end(name));
std::cout << "reverse: ";
for (auto e : name) std::cout << e;
std::cout << endl;
int* ip;
int n = 9;
ip = &n;
std::cout << "Pointer Values" << endl << "original: " << ip << endl;
std::stringstream ss;
ss << ip;
std::string address = ss.str();
std::reverse(std::begin(address), std::end(address));
std::cout << "reverse: ";
for (auto e : address) std::cout << e;
std::cout << endl;
return 0;
}
Output:
Int Array
original: 4567
reverse: 7654
String
original: DRAGON
reverse: NOGARD
Pointer Values
original: 0115FB40
reverse: 04BF5110