التحكم في العمليات C
يشير مصطلح "التحكم في العمليات" في لغة C إلى مجموعة من الدوال الموجودة في المكتبة القياسية للغة البرمجة C، والتي تُنفذ عمليات التحكم الأساسية في العمليات. [ 1 ] [ 2 ] تشمل عمليات التحكم في العمليات إجراءات مثل إنهاء البرنامج مع مستويات مختلفة من التنظيف، أو تشغيل مترجم أوامر خارجي، أو الوصول إلى قائمة عمليات البيئة.
نظرة عامة على الوظائف
يتم تعريف وظائف التحكم في العملية في stdlib.hملف الرأس ( cstdlibheader في لغة C++).
| وظيفة | وصف | |
|---|---|---|
| إنهاء برنامج | abort | يتسبب في إنهاء البرنامج بشكل غير طبيعي (بدون تنظيف) |
exit | يؤدي إلى إنهاء البرنامج بشكل طبيعي مع عملية التنظيف | |
_Exit | يؤدي إلى إنهاء البرنامج بشكل طبيعي دون تنظيف ( C99 ) | |
atexit | يسجل دالة ليتم استدعاؤها عند استدعاء الدالة exit() | |
quick_exit | يؤدي إلى إنهاء البرنامج بشكل طبيعي دون تنظيف، ولكن مع مسح مخازن الإدخال/الإخراج ( C11 ) | |
at_quick_exit | يسجل دالة ليتم استدعاؤها عند استدعاء الدالة quick_exit() | |
| التواصل مع البيئة | getenv | الوصول إلى قائمة متغيرات البيئة |
system | يستدعي معالج الأوامر الخاص ببيئة المضيف |
مثال
فيما يلي مثال على التواصل مع بيئة النظام في لغة C.
#include <stdio.h> #include <stdlib.h>int main () { char * path = getenv ( "PATH" ); if ( ! path ) { fprintf ( stderr , "لم يتم العثور على متغير البيئة PATH. \n " ); } else { printf ( "متغير PATH: %s \n " , path ); }printf ( "عرض محتويات الدليل الحالي باستخدام system( " ls " ): \n " ); int ret = system ( "ls" );إذا كانت قيمة ret تساوي -1 ، فسيتم طباعة رسالة " فشل استدعاء الدالة system()!" على الخطأ القياسي .return 0 ; }مراجع
- ↑ كروفورد، توني؛ بيتر برينز (ديسمبر 2005). C باختصار . §16.11 – التحكم في العمليات : أورايلي. ص 618. ISBN 0-596-00697-7.
{{cite book}}: CS1 maint: location ( link ) - ↑ مواصفة ISO/IEC 9899:1999 (ملف PDF) . صفحة 315، الفقرة 7.20.4 "التواصل مع البيئة" . تم الاطلاع عليها بتاريخ 25 نوفمبر 2011 .
روابط خارجية
فئة :
- مكتبة C القياسية
