پنجشنبه ۲۹ خرداد ۹۹ ۰۸:۵۹ ۵۰ بازديد
برنامه زير نمرات ۵ دانش آموز را با استفاده از تابع نمايش مي دهد.
- #include
- using namespace std;
- void display(int marks[5]);
- int main()
- {
- int marks[5] = {88, 76, 90, 61, 69};
- display(marks);
- return 0;
- }
- void display(int m[5])
- {
- cout << “Displaying marks: “<< endl;
- for (int i = 0; i < 5; ++i)
- {
- cout << “Student “<< i + 1 <<“: “<< m[i] << endl;
- }
- }
خروجي
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 در كد بالا نشان دهنده آدرس حافظه عنصر اول آرايه [۵]mark است.
و آرگومان عادي [۵]int m در تعريف تابع به int * m تبديل مي شود. اين اشاره گر به همان آدرس اشاره شده توسط آرايه marks اشاره دارد.
اگرچه در تابع آرايه با نام [۵]m تعريف شده اما آرايه marks هنگام ارسال به جاي آن مي نشيند و تغييرات روي آن اعمال مي شود.