الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Mr.B

خبير C/C++

الخبراء المعتمدون عضو فعال ★★★

656مشاركة
667السمعة
36موضوع منشور
26 يوليو 2010تاريخ الانضمام
9 ديسمبر 2017آخر زيارة
41,290مشاهدة للملف
  1. مساعدة في برنامج lex

    %option noyywrap chiffre [0-9] nb {chiffre}+ integer [+-]?{nb} rationel {integer}"/"{integer} %% {rationel} { printf("rationel : %s\n", yytext); } {integer} { printf("integer : %s\n", yytext); } %% int main(void) { yylex(); return 0; }

    22 ديسمبر 2014 في 23:01
  2. مساعدة في برنامج lex

    عدد ناطق = عدد كسري ؟ يمكنك استخدام طريقة أطول تطابق، مثلأً إذا أردتي مطابقة علامة المساواة == وعلامة الإسناد =، لأن النمطين فيهما جزئ مشترك (عدد صحيح في حالتك)، فيلزم أن بدأين أولاً بالتحقق من علامة المساواة == لأنها الأطول ثم =، وإلا فسيعتبر flex أن == عبارة…

    20 ديسمبر 2014 في 02:23
  3. Case insensitive string

    لاتوجد دالة في c لهذا الغرض (توجد هناك stricmp لكنها ليست قياسية وقد لاتجدينها)، يمكنك كتابة واحدة واستخدام tolower: int istrcmp(const char *s1, const char *s2) { for( ; tolower(*s1) == tolower(*s2); s1++, s2++) if(*s1 == '\0') return 0; return *(unsigned cons…

    15 ديسمبر 2014 في 20:07
  4. مساعدة في برنامج lex

    هناك مسافة هنا: {mot_clé } { printf ("mot_clé");} ^ مسافة يلزم إزالتها واستبدلي é بحرف e (لاتدعم C غير رموز الإنجليزية و _ والأرقام مسموحة بعد الحرف الأول). أيضاً لديكي مشكلة أن identificateur سيتم التحقق منها قبل mot_cle والتي يبدو أنها تمثل الكلمات المحجوزة …

    15 ديسمبر 2014 في 00:05
  5. ما الفرق سوال سهل لشباب الفريق العربي

    ربما لو تعدل العنوان لمثلاً "سؤال عن بنية الإنترنت" لكان أفضل. الصورة تشرح بنية الإنترنت (يرجى الإنتباه أن هذه البنية ليست دائماً شجرية كما سترى): مزود خدمة الإنرنت المحلي Local ISP (تسمى أيضاً Access ISP)، هي الجهات التي توفر خدمة التوصيل بالإنترنت للمستخدمين…

    14 ديسمبر 2014 في 12:53
  6. مشكلة في التعامل مع رموز ASCII في البايثون

    وضح الغرض من السؤال للحصول على إجابة جيدة. الآسكي 128 رمز (7 بت) تبدأ من 0 إلى 127، مابعدها ليس آسكي، بل يختلف حسب الترميز (في أغلب الترميزات أول 128 قيمة تحوي رموز آسكي)، مثلاً 224 (0xe0) يشير إلى "ض" في ترميز CP 720 ، أو "à" في Windows-1256 أو "Ó" في CP 857 …

    9 ديسمبر 2014 في 02:20
  7. Exception 0xC0000005 with list

    الـstruct مثل class عدى أن عناصرها افتراضياً public (في الـclass افتراضياً private). operator() ستسدعى إذا استعيدتي الكائن (تجعله كما لو كان دالة)، جربي هذا: #include <iostream> using namespace std; struct Object { Object() { cerr << "Object()" << endl; } void…

    5 ديسمبر 2014 في 11:40
  8. خطأ في تنفيذ destructor

    المشكلة لديك أن char* a مشتركة، عندما يستدعى الـdestructor فستحرر الذاكرة المحجوزة لـa، وتبقى الكائنات التي تشير لنفس الذاكرة تشير لبيانات غير صالحة. أول destructor سيستدعى ويسبب المشكلة هنا (القيمة الممررة v): second(first v) { f=v; } في الدالة الرئيسية: firs…

    5 ديسمبر 2014 في 11:20
  9. Exception 0xC0000005 with list

    عند حذفك للعنصر، فكائن الـlist<string>::iterator لم يعد صالح لأنه يشير لعنصر محذوف: يمكنك استدعاء remove مباشرة وتمرير x لها وستحذف العناصر المساوية لـx. ... int main() { list <string> mylist; string x; cout<<"test: "; cin>> x; ... mylist.remove(x); ... } أو ي…

    25 نوفمبر 2014 في 19:35
  10. كيفيه تعديل هذا الكود للحصول على عنوان النافذه من خلال ال اسم البروسس الخاص بها

    العملية قد تكون فيها أكثر من نافذة، أي أكثر من thread في كل واحد نافذة، لايشترط أن تكون مرئية!. يمكنك عرض قائمة بالنوافذ باستخدام EnumWindows ، ستحصل على مقبض للنافذة، استخرج معرف العملية التي تتبع له باستخدام GetWindowThreadProcessId ، وقارنه بالعملية التي تر…

    21 نوفمبر 2014 في 16:37
  11. التحقق من عمل process ما

    FindWindow لديك تبحث بإسم النافذة، وهذه تتغير، يمكنك استخدام اسم فئة class النافذة مثل Notepad إذا كنت تبحث عن برنامج معين، استخدم أداة Spy++ للإيجادها، في المرفقات. اضغط على ايقونة البحث واستخدم الـFinder tool. if(FindWindow(L"Notepad", NULL)) { /* وجدت */} أ…

    7 نوفمبر 2014 في 11:47
  12. كيف احل مشكلة التواصل بين ال process باستخدام ال pipe

    wait تستقبل مؤشر لـint أو NULL: #include <sys/types.h> #include <sys/wait.h> pid_t wait(int *status); ليس int أو بدون قيمة (القيمة الفارغة لاتعني NULL!)، المصرف يفترض أن ينبهك على هذه الأخطاء، اقرأي تحذيراته وصلحيها. أيضاً هذا الكود ليس سليم: pid = fork();wait…

    6 نوفمبر 2014 في 02:49
  13. كيف احل مشكلة التواصل بين ال process باستخدام ال pipe

    وجود النصوص الفرنسية في الحقيقة يصعب فهم البرنامج. هناك بعض الأخطأ لديك wait تأخذ مؤشر لـint، أما أن تمررين لها قيمه أو NULL، ثم أنها تستدعى في العملية الأب وليست في الإبن ( انظري هنا ). fork تعيد صفر في العملية الأبن وليس في الأب، انظري لتوثيق الدالة (أو من ا…

    4 نوفمبر 2014 في 21:49
  14. اريد علاقة بين exit and wait؟

    *** مشاركة مكررة، يرجى حذفها. ***

    4 نوفمبر 2014 في 21:22
  15. اريد علاقة بين exit and wait؟

    wait تجعل العملية الأم تتوقف وتنتظر حتى تتغير حالة العملية الإبنه (تتوقف، أو تنتهي، أو تنهار وغيرها من الحالات)، سبب تغير حالة العملية الإبنه سيمرر عبر المتغير status الذي تمررينه لـwait (يمكن تمرير NULL إذا كان لايهم السبب). يمكنك استخدامها لجعل العملية الأم …

    4 نوفمبر 2014 في 21:18
  16. مشكلة في ال class لغة cpp

    المشكلة لديك أن الدالة operator== معرفة في الملف Duree.cpp، فلا يمكن رؤيتها من main.cpp. 1- ممكن أن تعلن عنها في الملف الرأسي: ... }; bool operator==(Duree const& a,Duree const& b); #endif // DUREE_H_INCLUDED 2- أو ممكن أن تنقل الدالة للملف الرأسي وتزيلها من D…

    11 أكتوبر 2014 في 16:44
  17. كيفية معرفة مايمثله الكود بقيم الهيكس .

    البرنامج لايحول لـhex، فالـhex نظام عد، هذه الأرقام 92 44 55 بايتات يعرضها لك البرنامج بنظام الـhex. الملف التنفيذي الناتج يحوي عدة أقسام من بينها قسم التعليمات code أو text الذي يضم تعليمات برنامجك. انظر في برنامجك في العمود الثاني من اليسار (push 0 تقابل الب…

    3 سبتمبر 2014 في 18:41
  18. سؤال بخصوص التعامل ب HEXADECIMAL

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

    26 أغسطس 2014 في 06:57
  19. هل درست ++C من الـ manual ؟ لا ! إذاً استعد للكوابيس

    هذه تسمى trigraph sequences وهي، الرمز ومايقابله: ??= # ??( [ ??/ \ ??) ] ??' ^ ??< { ??! | ??> } ??- ~ ??? ? مدعومة من c89 وقبل، سبب وجودها أن بعض لوحات المفاتيح القديمة كانت تفتقر لبعض تلك الرموز لذا يستعاض بهذه الرموز بدلها. gcc يتجاهلها افتراضياً مع تحذير،…

    10 أغسطس 2014 في 03:20
  20. عايز اتعلم مايكروكونتولورار من فضلكم

    يرجى أخي الكتابة بالفصحى. لاتحتاج للتلحيم وهذه الأشياء، هذه خطوة أخيرة إذا اعتمدت تصميمك، الأغلب يستخدمون لوح تجارب breadboards مثل هذه: تجد بها ثقوب فقط تثبت فيها المكونات وتفصلها. نصيحتي لك أن تشتري متحكمة آردوينو أونو Arduino Uno، رخيص ومتعدد الإستخدامات وم…

    9 أغسطس 2014 في 22:55