قيمة الإرجاع
الدرس 4 من 17 في دورة الدوال في C على Coddy.
يمكن للدالة إرجاع نتيجة لاستخدامها خارج الدالة. لإرجاع نتيجة، استخدم الكلمة المفتاحية return بهذا الشكل:
return;
return expression;يُستخدم الشكل الأول (return;) للدوال التي لا تُرجع أي قيمة (أي أن نوع الإرجاع الخاص بها هو void).
يُستخدم الشكل الثاني (return expression;) للدوال التي تُرجع قيمة. الـ expression هو القيمة المراد إرجاعها.
لنلقِ نظرة على مثال:
void sum(int a)
{
printf("%d + %d = %d \n", a, 2, a + 2);
}هذه الدالة لا تستخدم return بشكل صريح، لكن المترجم (compiler) يضيفها تلقائياً في النهاية.
void plus(int a)
{
printf("%d + %d = %d \n", a, 2, a + 2);
return;
}يمكن للدالة أيضاً إرجاع قيمة محددة. على سبيل المثال:
int plus(int a, int b)
{
return a + b;
}الآن، تُرجع الدالة plus قيمة من نوع int. عندما لا يكون نوع إرجاع الدالة هو <mark class="pen-red">void</mark>، يجب عليها إرجاع قيمة من ذلك النوع. لإرجاع قيمة، استخدم return وحدد القيمة.
إذا كانت الدالة تُرجع قيمة، يمكنك تخزين الـ نتيجة في متغير بهذا الشكل:
int result = plus(3, 4);
التحدي
سهلاكتب برنامجاً لطباعة حاصل ضرب عددين:
- عرّف دالة تسمى
<strong>multiply</strong>تأخذ معاملين،<strong>x</strong>و<strong>y</strong>، من نوع<strong>int</strong>وتعيد نتيجة ضرب<strong>x</strong>و<strong>y</strong>. - في الدالة
main، عرّف متغيراًzسيقوم بتخزين نتيجة تمرير الرقمين 9 و 10 إلى الدالةmultiply. - اطبع قيمة
zعلى الشاشة.
جرّب بنفسك
#include <stdio.h>
// تعريف الدالة
int main(void)
{
// تعريف المتغير `z`
// طباعة قيمة `z`
return 0;
}