Using C++11: Write a function that takes a char array as an input parameter and reverses the string. The function should use two pointers, front and rear. The frontpointer should initially reference the first character in the string, and the rear pointer should initially reference the last character in the string. Reverse the string by swapping the characters referenced by front and rear, then increment front to point to the next character and decrement rear to point to the preceding character, and so on, until the entire string is reversed. Then, write a main function that takes a string as input from the user and prints the reversed string (using the above function). All input strings will be 100 characters or fewer. You must use pointers to reverse the array. If you use dynamic arrays (not required), you must delete all memory allocated to any dynamic arrays before the program ends. The program should print a string of text to the terminal before getting each line of input from the user. A session should look like one of the following examples (including whitespace and formatting), with possibly different numbers in the output: The strings printed by the program should include a newline at the end. Solution #include <iostream> #include <cstring> using namespace std; string reverse(char word[20]); int main() { char string[20]; cout<<\"enter a word: \"; cin>>string; string results = reverse(string); cout <<results; } string reverse(char word[20]) { char a=\'a\'; char b=\'b\'; char *front=&a; char *rear=&b; for (int i=0;i< (strlen(word)/2);i++) { front[0]=word[i]; rear[0]=word[strlen(word)-1-i]; word[i]=*rear; word[strlen(word)-1-i]=*front; } return word; } .