Question

Essayer d'obtenir getch () travailler pour saisir appuyer sur la touche.

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

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

me donne l'erreur suivante: -

undefined reference to `wgetch'
undefined reference to `stdscr'
Était-ce utile?

La solution

C'est une erreur de liaison. Établissent un lien entre vous correctement la bibliothèque curses?

Il y a deux étapes à l'aide d'une bibliothèque en C.

  1. Vous #include les fichiers d'en-tête pertinents de vos fichiers source. Il en est ainsi votre code sait ce que les signatures des fonctions de bibliothèque sont. Alors que vous faites cela correctement.
  2. Lors de la compilation de votre code, vous devez indiquer l'éditeur de liens pour créer un lien vers les bibliothèques concernées, il peut trouver la définition de ces fonctions. C'est ce que vous ne faites pas . En supposant que vous utilisez gcc puis en ajoutant -lncurses à la ligne de compilation devrait le faire. Voici une explication de relier .
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top