PDA

View Full Version : سوال: چگونه ارايه دو بعدي را از تابع return كنيم؟



foe007
شنبه 10 مهر 1389, 15:20 عصر
سلام
با عرض پوزش

چطوري از يك تابع كه روي يك آرايه كاركرده، مي شود آرايه نهايي را به تابع اصلي return كرد

صحبت من در خصوص آرگومان يا پارامتر نيست

بلكه مي خواهم خروجي تابع را به برنامه اصلي بفرستم

ممنون

tdkhakpur
شنبه 10 مهر 1389, 19:16 عصر
بلكه مي خواهم خروجي تابع را به برنامه اصلي بفرستم
خب شما نوع آرگومان را با یک نوع دیگه در خروجی ارسال کنید و موقع دریافت همان نوع قبلی را وارد کنید مثلا


char *MyProc(void)
{
char **a;
// محتوای تابع
return (char*)a
}
// موقع دریافت
char **str;
str = (char **)MyProc();

Salar Ashgi
شنبه 10 مهر 1389, 19:52 عصر
تقریبا یه مثال کاربردی برای فهم بیشتر موضوع :



#include <iostream>
#include <conio>
#include <stdlib>
int** func(){
int **a = new int*[3];
for(int i=0;i<3;i++)
a[i] = new int[3];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++)
a[i][j] = rand()%10;}
return a;}
//========================
int main(){
srand(time(0));
int **a = func();
for(int i=0;i<3;i++){
for(int j=0;j<3;j++)
cout<<a[i][j]<<" ";
cout<<endl;}
getch();
}

تابع func هربار یک آرایه دوبعدی 3×3 با درایه تصادفی ایجاد کرده و ما در تابع main آنرا چاپ میکنیم !
هر سوالی بود ، مطرح کنید .
موفق باشید ./