सी ++ पूरे सरणी को वापस नहीं करता है लेकिन यह पॉइंटर को सरणी में वापस कर सकता है। फ़ंक्शन के बाहर, स्थानीय चर का पता वापस नहीं किया जा सकता है। स्थानीय चर को स्थिर बनाकर, यह स्थानीय चर का पता वापस कर सकता है।
पॉइंटर वापस करने के लिए सिंटैक्स निम्नलिखित है।
int * function_name() { body }
यहां,
function_name - उपयोगकर्ता द्वारा दिए गए फ़ंक्शन का नाम।
किसी फ़ंक्शन से एक सरणी वापस करने के लिए एक उदाहरण निम्नलिखित है।
उदाहरण
#include <iostream> using namespace std; int * ret() { static int x[3]; for(int i=0 ; i<5 ; i++) { cout << " " <<&x[i]; } return x; } int main() { ret(); return 0; }
आउटपुट
0x601180 0x601184 0x601188 0x60118c 0x601190
उपरोक्त कार्यक्रम में, एक फ़ंक्शन ret() बनाया गया है और यह एक सरणी लौटा रहा है। एक स्थिर int प्रकार सरणी घोषित की जाती है और आवंटित स्मृति ब्लॉक के पते मुद्रित होते हैं।
int * ret() { static int x[3]; for(int i=0 ; i<5 ; i++) { cout << " " <<&x[i]; } return x; }
मुख्य () फ़ंक्शन में, फ़ंक्शन रिट () को कहा जाता है -
ret();