<curses.h>;<curse.h>的问题;<conio.h> 在 G++ Linux 终端中

Issue with <curses.h>;<curse.h>;<conio.h> in G++ Linux terminal

本文关键字:gt lt Linux G++ 终端 curses curse 问题 conio      更新时间:2023-10-16
#include <iostream>
    using namespace std;
    #include <curses.h>  //#include <conio.h>
    int main()
    {
    initscr();
    char dir='a';
    int x=10,y=10;
    cout<<"Please press ENTER for EXIT...n";
    while (dir != 'r')
    {
     cout<<"n Your coordinates: " << x << ", " << y;
     cout<<"n Select your destination: (N,S,E,W): ";
     dir = getch();
     if(dir =='n')
     y--;
      else if(dir=='s'))
     y++;
      else if(dir=='e'))
     x++;
      else if(dir=='w'))
     x--;
     }
    return 0;
    }

给错误

msi@MSI-VR610:~/Desktop$ g++ adelseif.cpp -o adelseif
adelseif.cpp:5:42: fatal error: curses.h: No such file or directory
#include <curses.h>  //#include <conio.h>

所以我尝试使用替代目录curse。h和ncurse。h和其他组合但它无法编译

您需要安装相应的软件包;对于Ubuntu,这是libcurses5 -dev;对于Fedora来说,这似乎是护士的发展。使用您的包管理器(apt-get, yum等)来安装它。

你也需要在库中链接;通过在编译命令中添加"-lcurses"或"-lncurses"来实现这一点(两者都在Ubuntu上工作;我不确定其他发行版)。

你的代码在"else if…"行中有额外的右括号;当使用curses.h进行编译时,您将获得更多细节。