اريد فهم الفرق بين argv et argc
مرحبا عبد الرزاق،
argc : يعني argument count وهو عدد الباراميترات الممررة للتابع ويكون رقم 1,2,3 ..
argv: يعني argument vector مصفوفة البارامترات و تحميل قيمها
argv هي مصفوفة من بعد واحد عدد عناصرها يساوي argc وتكون عناصرها من نوع String سلاسل نصية
يبين المثال السابق استخدام هذين المتحولين لقراءة القيم الممررة للتابع عند الاستدعاء
حيث نأخذ قيم المتحولات بالتسلسل عن طريق index دليل العنصر في المصفوفة
ضمن المثال استدعينا البرنامج باستخدام الأمر التالي: test a1 b2 c3/.
أي نفذ البرنامج الموجود في الملف test و مرر له القيم النصية a1 b2 c3 , اسم مسار الملف
و نعود لطباعتها ضمن البرنامج في الحلقة ..
شكرا
argc :argument count هو عدد الوسائط التي يتم تمريرها إلى برنامجك من سطر الأوامر،
argv :argument vector هو مصفوفة الوسائط.
هذه هي المتغيرات التي تم تمريرها إلى الوظيفة الرئيسية عند بدء التنفيذ. عندما ندير برنامجًا ، يمكننا تقديم argument لهذا البرنامج مثل -
$ ./a.out hello
مرحبا هنا argument للملف التنفيذي. يمكن الوصول إلى هذا في برنامجك. #include
using namespace std; int main(int argc, char** argv) { cout << "This program has " << argc << " arguments:" << endl; for (int i = 0; i < argc; ++i) { cout << argv[i] << endl; } return 0; }
عندما تقوم بتجميع وتشغيل هذا البرنامج:
$ ./a.out hello people
سيعطي هذا الإخراج، هذا البرنامج الذي يحتوي على ثلاث argument
C:\Users\user\Desktop\hello.exe hello people
لاحظ أن الوسيطة الأولى هي دائمًا موقع التنفيذ القابل للتنفيذ.
مجتمع للمبرمجين من جميع المستويات لتبادل المعرفة والخبرات. ناقش لغات البرمجة المختلفة، الحلول البرمجية، والمشاريع.
صمم موقعك كاملا بالسحب والإفلات بدون خبرة برمجية، واحجز مكانك على الإنترنت.