代码之家  ›  专栏  ›  技术社区  ›  flarn2006

我的代码怎么了?(pCusses/GetMaxyx)

  •  1
  • flarn2006  · 技术社区  · 15 年前

    它在getmaxyx行(主函数中的第二行)上给了我一个访问冲突,并给了我这两个警告:

    LINK : warning LNK4049: locally defined symbol "_stdscr" imported
    LINK : warning LNK4049: locally defined symbol "_SP" imported
    

    是的,这和我问的另一个问题的代码是一样的,只是我想说得更清楚。是的,我以前用pdcurse编写过程序,没有问题。

    #include <time.h>
    #include <curses.h>
    #include "Ball.h"
    #include "Paddle.h"
    #include "config.h"
    
    int main(int argc, char *argv[])
    {
        int maxY, maxX;
        getmaxyx(stdscr, maxY, maxX);
    
        Paddle *paddleLeft = new Paddle(0, KEY_L_UP, KEY_L_DOWN);
        Paddle *paddleRight = new Paddle(maxX, KEY_R_UP, KEY_R_DOWN);
        Ball *ball = new Ball(paddleLeft, paddleRight);
    
        int key = 0;
    
        initscr();
        cbreak();
        noecho();
        curs_set(0);
    
        while (key != KEY_QUIT)
        {
            key = getch();
            paddleLeft->OnKeyPress(key);
            paddleRight->OnKeyPress(key);
        }
    
        endwin();
        return 0;
    }
    
    2 回复  |  直到 15 年前
        1
  •  1
  •   Aryabhatta    15 年前

    我用咒语已经很久了,但我想你需要打电话给我 initscr() 之前 任何其他的诅咒都像 getmaxyx .

    还有,你 可能 还缺少对initscr返回的一些错误检查,需要正确使用返回值(也许您必须将其传递给其他curses方法?).

        2
  •  1
  •   R Samuel Klatchko    15 年前

    你需要打电话 initscr 之前 getmaxyx