أهلا ومرحبا بكم مرة أخرى. تحد آخر لك.
مرة أخرى ، سيكون على المؤشرات. ما أريد أن أحاول مساعدتك في تعلمه في
هذا التحدي هو مفهوم المرور بالإشارة.
لذلك على الرغم من أن c تقوم بكل شيء يتم تمريره بالقيمة
، إلا أنها في الواقع تقوم بإنشاء نسخة من العنوان عند استخدام المؤشرات
، لذلك تمر المحاكاة بالإشارة.
والميزة الكبيرة للتمرير حسب المرجع هي أنه عندما
تقوم بتغيير قيمة المؤشر أو المتغير داخل
دالة ، دالة ، سترى التغيير ينعكس خارج الدالة.
لذلك لا يتعين علينا استخدام المتغيرات
العالمية بنفس القدر ، وهي ميزة كبيرة أن تكون قادرًا على
تمرير البيانات إلى وظيفة كمؤشر يمر عبر المرجع.
لذا في هذا التحدي ، ستكتب برنامجًا يختبر فهمك لمرور بالإشارة وكيفية استخدام
المؤشرات للقيام بذلك.
أريدك أن تكتب دالة تربيع رقمًا في حد ذاته.
سيكون تنفيذ الوظيفة بسيطًا جدًا.
ستقوم فقط بتربيع الرقم الذي تمرره.
لذلك يجب تحديد الوظيفة كمعامل في مؤشر int.
في إعلان وظيفتك ، تأخذ نجمة int وهي مؤشر.
ثم داخل تنفيذ الوظيفة ، كل ما ستفعله هو
أنك ستحتاج إلى إلغاء إشارة قيمة المؤشر
وضربها في نفسها.
لا يتعين عليك إرجاع أي بيانات من هذه الوظيفة.
أريد فقط أن أجعلك تفهم مفهوم المرور بالإشارة
أو التمرير في المؤشر.
آخر شيء يجب أن يفعله هذا البرنامج هو أن يطبع
قيمة المتغير ، قيمة المؤشر الذي تمرره إلى الوظيفة.
لذلك لا تحتاج حتى إلى إنشاء مؤشر لتمريره.
يمكنك استخدام نوع بيانات محيط عادي عدد صحيح عائم.
إنه فقط عندما تمرر هذا العدد الصحيح
، يجب أن يكون العنوان لأن وظيفة المربع لا تقبل سوى المؤشر.
لكن مرة أخرى ، ما ستلاحظه هنا هو أن القيمة
أو المتغير خارج الوظيفة ، الذي يتم تمريره إلى
الوظيفة سيتغير لأنك تستخدم العنوان
، وهذا سيقلد بالتزكية.
لذلك حظا سعيدا في هذا.
إنه أمر بسيط ومباشر.
مرة أخرى ، سوف تجعلك على دراية بصيغة المؤشر بالإضافة
إلى مفهوم المرور بالمرجع. شكرًا لك.