ارسال اشاره گر به تابع در زبان C++
در زبان برنامه نویسی C++ می توانید یک اشاره گر به عنوان آرگومان به یک تابع بفرستید. برای این کار فقط کافیست پارامتر تابع را از نوع اشاره گر تعریف کنید.
در مثال زیر ما یک اشاره گر از نوع unsigned long به تابع ارسال می کنیم سپس مقدار آن را درون تابع تغییر می دهیم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #include <iostream> #include <ctime> using namespace std; void getSeconds(unsigned long *par); int main () { unsigned long sec; getSeconds( &sec ); // print the actual value cout << "Number of seconds :" << sec << endl; return 0; } void getSeconds(unsigned long *par) { // get the current number of seconds *par = time( NULL ); return; } |
زمانی که کد بالا توسط کامپایلر زبان C++ اجرا شود، نتیجه زیر را تولید خواهد کرد:
1 | Number of seconds :1294450468 |
مثال زیر می تواند یک اشاره گر و یک آرایه را به عنوان پارامتر قبول کند:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #include <iostream> using namespace std; // function declaration: double getAverage(int *arr, int size); int main () { // an int array with 5 elements. int balance[5] = {1000, 2, 3, 17, 50}; double avg; // pass pointer to the array as an argument. avg = getAverage( balance, 5 ) ; // output the returned value cout << "Average value is: " << avg << endl; return 0; } double getAverage(int *arr, int size) { int i, sum = 0; double avg; for (i = 0; i < size; ++i) { sum += arr[i]; } avg = double(sum) / size; return avg; } |
زمانی که کد بالا کامپایل و اجرا شود نتیجه زیر را تولید خواهد کرد:
1 | Average value is: 214.4 |
هیچ نظری ثبت نشده است