مثال 1 : ارسال آرايه يک بعدي به تابع


برنامه زير نمرات 5 دانش آموز را با استفاده از تابع نمايش مي دهد.



  1. #include <iostream>

  2. using namespace std;

  3. void display(int marks[5]);

  4. int main()

  5. {

  6. int marks[5] = {88, 76, 90, 61, 69};

  7. display(marks);

  8. return 0;

  9. }

  10. void display(int m[5])

  11. {

  12. cout << “Displaying marks: “<< endl;

  13. for (int i = 0; i < 5; ++i)

  14. {

  15. cout << “Student “<< i + 1 <<“: “<< m[i] << endl;

  16. }

  17. }


خروجي



Displaying marks:


Student 1: 88


Student 2: 76


Student 3: 90


Student 4: 61


Student 5: 69



براي ارسال آرايه به تابع تنها نام آن استفاده مي شود.



display(marks);



همچنين تفاوت را در هنگام ارسال آرايه به عنوان آرگومان به جاي متغير متوجه مي شويد.



void display(int m[5]);



آرگومان marks در کد بالا نشان دهنده آدرس حافظه عنصر اول آرايه [5]mark است.


و آرگومان عادي [5]int m  در تعريف تابع به int * m تبديل مي شود. اين اشاره گر به همان آدرس اشاره شده توسط آرايه marks اشاره دارد.


اگرچه در تابع آرايه با نام [5]m تعريف شده اما آرايه marks هنگام ارسال به جاي آن مي نشيند و تغييرات روي آن اعمال مي شود.


C++ براي انتقال يک آرايه به تابع از اين شيوه براي صرفه جويي در حافظه و زمان پردازش استفاده مي کند.


انتقال آرايه چند بعدي به يک تابع


آرايه چند بعدي مي تواند مشابه بالا به صورت آرايه يک بعدي به تابع ارسال شود. مثال زير را در نظر بگيريد که مي خواهيم آرايه دو بعدي را به يک تابع ارسال کنيم:


مثال 2: انتقال آرايه چند بعدي به يک تابع


برنامه زير عناصر يک آرايه دو بعدي را با استفاده از تابع نمايش مي دهد.



  1. #include <iostream>

  2. using namespace std;

  3. void display(int n[3][2]);

  4. int main()

  5. {

  6. int num[3][2] = {

  7. {3, 4},

  8. {9, 5},

  9. {7, 1}

  10. };

  11. display(num);

  12. return 0;

  13. }

  14. void display(int n[3][2])

  15. {

  16. cout << “Displaying Values: ” << endl;

  17. for(int i = 0; i < 3; ++i)

  18. {

  19. for(int j = 0; j < 2; ++j)

  20. {

  21. cout << n[i][j] << ” “;

  22. }

  23. }

  24. }


خروجي



Displaying Values:


3 4 9 5 7 1


5 تا از بهترين روشهاي فشرده سازي عکس و فيلم با نرم افزارهاي زيپ

ارسال آرايه به تابع در برنامه نويسي C++ (به زبان کاملا ساده)

int ,marks ,display ,void ,namespace ,std ,marks 5 ,display int ,{int marks ,{88 76 ,5 {88

مشخصات

آخرین ارسال ها

آخرین جستجو ها


کتابخانه عمومی شهید مطهری جاجرم اللهم عجل لولیک الفرج بحق زینب کبری سلام الله علیها پایگاه تخصصی خلاصه کتب دانشگاهی Randal's receptions فروش انواع نهال درخت و گل starehsohyl فیلم سریال نمایش خانگی ایرانیان نیوز mojehdarya تفریحات سالم4