وظيفة يحصل () في لغة البرمجة ج كانت تستخدم سابقا لقراءة سلسلة من لوحة المفاتيح ، ولكن منذ فترة طويلة عفا عليها الزمن ولا ينصح للاستخدام. ومع ذلك ، في بعض الحالات ، من الممكن مواجهة مشكلة عندما يستخدم المترجم إصدارا قديما من اللغة التي لا تزال هذه الوظيفة متاحة بها ، ولكن يتم إرجاع الخطأ "لم يتم تعريف معرف يحصل".
إذا واجهت مثل هذا الخطأ ، فمن المستحسن استخدام وظيفة فجيتس () ، وهو بديل آمن لوظيفة جيتس (). وظيفة فجيتس() يقرأ سلسلة من ملف (أو دفق البيانات الأخرى) ويخزنها في المخزن المؤقت المحدد. في الوقت نفسه ، فإنه يحدد الحد الأقصى لعدد الأحرف للقراءة من أجل منع تجاوز سعة المخزن المؤقت.
مثال على استخدام وظيفة فجيتس() :
شارع شار [100];
فجيتس (شارع ، 100 ، ستدين);
في المثال أعلاه ، وظيفة فجيتس() يقرأ سلسلة من تيار الإدخال القياسية (ستدين) ويخزنها في مجموعة من الأحرف ستر. يتم تحديد حجم المخزن المؤقت هنا على أنه 100 حرف ، ولكن يمكنك استخدام حجم مختلف حسب احتياجاتك. سيضمن ذلك قراءة آمنة للسلسلة من لوحة المفاتيح وحماية البرنامج من تجاوز سعة المخزن المؤقت المحتمل.