سؤال

محاولة الحصول على getch () العمل على التقاط الصحافة الرئيسية.

    #include <curses.h>
    ...
    ...
    WINDOW *w;
    char f;

   w = initscr();
   timeout(3000);
   f = getch();
   endwin();

يعطيني بعد الخطأ: -

undefined reference to `wgetch'
undefined reference to `stdscr'
هل كانت مفيدة؟

المحلول

هذا خطأ ربط. هل ترتبط بمكتبة اللعنات بشكل صحيح؟

هناك خطوتان متورطان في استخدام مكتبة في C.

  1. أنت #include ملفات الرأس ذات الصلة من الملفات المصدر الخاصة بك. هذا هو المكان الخاص بك يعرف توقيعات وظائف المكتبة. لذلك أنت تفعل هذا بشكل صحيح.
  2. عند تجميع التعليمات البرمجية الخاصة بك، تحتاج إلى معرفة رابط الرابط إلى المكتبات ذات الصلة، لذلك يمكن أن تجد تعريف تلك الوظائف. هذا هو ما لا تفعله. وبعد على افتراض أنك تستخدم دول مجلس التعاون الخليجي ثم مضيفا -lncurses إلى خط الترجمة يجب أن تفعل ذلك. هنا شرح الربط.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top