एक स्ट्रिंग एक आयामी वर्ण सरणी है जिसे एक शून्य वर्ण द्वारा समाप्त किया जाता है। एक स्ट्रिंग के विपरीत विपरीत क्रम में एक ही स्ट्रिंग है। उदाहरण के लिए।
Original String: Apple is red Reversed String: der si elppA
एक प्रोग्राम जो रिकर्सन का उपयोग करके एक स्ट्रिंग के रूप में एक वाक्य को उलट देता है, निम्नानुसार दिया गया है।
उदाहरण
#include <iostream> using namespace std; void reverse(char *str) { if(*str == '\0') return; else { reverse(str+1); cout<<*str; } } int main() { char str[] = "C++ is fun"; cout<<"Original String: "<<str<<endl; cout<<"Reversed String: "; reverse(str); return 0; }
आउटपुट
Original String: C++ is fun Reversed String: nuf si ++C
उपरोक्त कार्यक्रम में, फ़ंक्शन रिवर्स () एक पुनरावर्ती फ़ंक्शन है जो एक स्ट्रिंग को उलट देता है।
प्रारंभ में रिवर्स() स्वीकार करता है *str जो एक सूचक है जो स्ट्रिंग की शुरुआत को इंगित करता है। यदि मान शून्य है, तो फ़ंक्शन वापस आ जाता है। यदि नहीं, तो फ़ंक्शन रिकर्सिवली स्वयं को मान str+1 यानी स्ट्रिंग में अगला तत्व के साथ कॉल करता है। आखिरकार, जब str शून्य होता है, तो str के मान बैक टू फ्रंट के लिए प्रिंट होते हैं। तो, उलटा स्ट्रिंग मुद्रित होता है। यह निम्नलिखित कोड स्निपेट द्वारा दिखाया गया है।
if(*str == '\0') return; else { reverse(str+1); cout<<*str; }
मुख्य () फ़ंक्शन में, स्ट्रिंग को इनिशियलाइज़ किया जाता है। साथ ही, मूल स्ट्रिंग और उल्टे स्ट्रिंग प्रदर्शित होते हैं। इसे इस प्रकार दिखाया गया है -
char str[] = "C++ is fun"; cout<<"Original String: "<<str<<endl; cout<<"Reversed String: "; reverse(str);