Reverse String in C Last Updated : 05 Dec, 2024 Summarize Comments Improve Suggest changes Share Like Article Like Report In C, reversing a string means rearranging the characters such that the last character becomes the first, the second-to-last character becomes the second, and so on. In this article, we will learn how to reverse string in C.The most straightforward method to reverse string is by using two pointers to swap the corresponding characters starting from beginning and the end while moving the indexes towards each other till they meet each other. C #include <stdio.h> #include <string.h> void rev(char* s) { // Initialize l and r pointers int l = 0; int r = strlen(s) - 1; char t; // Swap characters till l and r meet while (l < r) { // Swap characters t = s[l]; s[l] = s[r]; s[r] = t; // Move pointers towards each other l++; r--; } } int main() { char s[100] = "abcde"; // Reversing s rev(s); printf("%s", s); return 0; } OutputedcbaApart from the simple method mentioned above, there are few more methods which we can use to reverse the string. Some of them are:Table of ContentUsing RecursionUsing Temporary ArrayUsing Library FunctionUsing RecursionThe two-pointer approach can also be implemented using recursion. Just pass the left and the right index pointer as argument to the recursive function and move them towards each other in each recursive call. C #include <stdio.h> #include <string.h> void rev(char* s, int l, int r) { // Base case is when l becomes greater than r if (l >= r) return; // Swap characters char t = s[l]; s[l] = s[r]; s[r] = t; // Recursively call the function with updated // index pointers rev(s, l + 1, r - 1); } int main() { char s[100] = "abcde"; rev(s, 0, strlen(s) - 1); printf("%s", s); return 0; } Outputolleh Using Temporary ArrayStore the reverse of string in a temporary array by traversing it from the back and copying each character to the other array. Then copy the reversed string from another array into the original string. C #include <stdio.h> #include <string.h> void rev(char* s) { char t[100]; int len = strlen(s); int i = 0; // Push all characters of string s onto t while (len > 0) t[i++] = s[len-- - 1]; t[i] = '\0'; // Copying all characters from t to // original string s strcpy(s, t); } int main() { char s[100] = "abcde"; // Reversing string s rev(s); printf("%s", s); return 0; } OutputedcbaUsing Library FunctionIn C, strrev() defined inside <string.h> can be used to reverse a string. This function provides the simplest method to reverse the string. C #include <stdio.h> #include <string.h> int main() { char s[] = "abcde"; // Reversing string using strrev() printf("%s", strrev(s)); return 0; } OutputedcbaNote: The strrev() function is not a part of the standard C language, so it might not be present in every compiler. Reverse a String Visit Course Comment More infoAdvertise with us Next Article How to Reverse a String in C? M maityamit_2003 Follow Improve Article Tags : C Programs C Language C-String C Basic Programs Similar Reads How to Reverse a String in C? In C, a string is a sequence of characters terminated by a null character (\0). Reversing a string means changing the order of the characters such that the characters at the end of the string come at the start and vice versa. In this article, we will learn how to reverse a string in C. Example: Inpu 2 min read Reverse Array in C Reversing an array means the swapping last element and first element, second last element and second element, and so on. In this article, we will learn how to reverse an array in C.The simplest method to reverse an array in C program is by using two pointers: one starting at the beginning (left) and 3 min read C Program To Reverse Words In A Given String Example: Let the input string be "i like this program very much". The function should change the string to "much very program this like i" Examples:Â Input: s = "geeks quiz practice code"Â Output: s = "code practice quiz geeks" Input: s = "getting good at coding needs a lot of practice"Â Output: s = " 3 min read C Program to Reverse a String Using Recursion Reversing a string means changing the order of characters in the string so that the last character becomes the first character of the string. In this article, we will learn how to reverse a string using recursion in a C program.The string can be reversed by using two pointers: one at the start and o 1 min read C Program to Reverse a Stack using Recursion Write a program to reverse a stack using recursion, without using any loop. Example:Â Input: elements present in stack from top to bottom 1 2 3 4Â Output: 4 3 2 1Â Input: elements present in stack from top to bottom 1 2 3Output: 3 2 1 Recommended PracticeReverse a StackTry It!Reverse a stack using Re 5 min read Reverse Number Program in C The reverse of a number of means reversing the order of digits of a number. In this article, we will learn how to reverse the digits of a number in C language. Example:Input: 12354Output: 45321Explanation: The number 12354 when reversed gives 45321Input: 623Output: 326Explanation: The number 623 whe 2 min read Like