当前位置:  技术问答>linux和unix

这样编写程序有什么错

    来源: 互联网  发布时间:2015-03-27

    本文导语:  我装的是mandrak linux9.0  程序如下: #include  #define StartX 1  #define StartY 1 main() {  int x=StartX;    int y=StartY;    int ch;   initscr();    cbreak();    nonl();    noecho();    intrflush(stdscr,false);    keypad(stdscr,true);  ...

我装的是mandrak linux9.0 
程序如下:
#include 
#define StartX 1 
#define StartY 1
main()
{
 int x=StartX; 
  int y=StartY; 
  int ch;
  initscr(); 
  cbreak(); 
  nonl(); 
  noecho(); 
  intrflush(stdscr,false); 
  keypad(stdscr,true); 
  refresh(); 

 box(stdscr,'|','-'); /* 画方框*/ 
  attron(A_REVERSE); /* 开启反白模式*/ 
  mvaddstr(0,20,"Curses Program"); /* 在 (20,0) 处输出反白字元 */ 
  attroff(A_REVERSE); /* 关闭反白模式 */ 
  
  move(x,y);
 do { /* 以无限回圈不断等待输入 */ 
       ch=getch(); /* 等待自键盘输入字元 */
       switch(ch) { /* 判断输入字元为何 */ 
                    case KEY_UP: --y; /* 判断是否"↑"键被按下*/ 
                         break; 
                    case KEY_DOWN: ++y; /* 判断是否"↓"键被按下*/ 
                         break; 
                    case KEY_RIGHT: ++x; /* 判断是否"→"键被按下 */ 
                         break; 
                    case KEY_LEFT: --x; /* 判断是否"←"键被按下 */ 
                         break; 
                    case 'r': /* 判断是否 ENTER 键被按下 */ 
                         ++y; 
                         x=0; 
                         break; 
                    case 't': /* 判断是否 TAB 键被按下*/ 
                         x+=7; 
                         break; 
                    case 127: /* 判断是否 BACKSPACE 键被按下 */ 
                         mvaddch(y,--x,' ');/* delete 一个字元 */ 
                         break; 
                    case 27: endwin(); /* 判断是否[ESC]键被按下 */ 
                         exit(1); /* 结束 curses 模式 */ 

                         /* 结束此程式*/ 

                    default: 
                         addch(ch); /* 如果不是特殊字元, 将此字元印出 */ 
                         x++; 
                         break; 
                  } 
        move(y,x); /* 移动游标至现在位置*/ 

  } while (1); 
}

用gcc -o cur cur.c -lcurses命令编译报错如下:
true,false,stdscr,A_REVERSE,KEY_UP...都没有定义
这是怎么回事呀


|
1.用g++ -o cur cur.c -lcurses
2.要#include你用到的头文件,如#include 

|
mv cur.c cur.cpp

|
你要#include你用到的头文件,如#include 

    
 
 

您可能感兴趣的文章:

  • 用Qt3.1.4编写的程序,如何加入自己编写的另外一个动态库呀?诚恳指教!!
  • 用jsp编写web程序到底和java serverlet编写web程序有和区别
  • 编写程序如编写人生,有人和我的意见相同吗?
  • 求教:编写一个bash脚本程序执行一个./file 程序
  • 学了linux程序设计后能不能编写出应用程序
  • 编写连接数多的服务器程序用什么程序结构比较好呢?
  • 请问用jsp编写程序,非要编写代码么?有没有什么象fontpage2000那样的工具,能够生成一些固定模板的工具?就是说不用全部都写的工具。望
  • 客户端程序与容器打交道时客户端用什么程序编写?比如银行添单。
  • 如何编写服务程序,执行后返回到shell,但程序在后台运行?
  • 在linux上怎么编写一个模块来提供某个中断的中断处理程序呢?而且有哪些中断可以自己添加中断处理程序呢?
  • java能不能编写单独运行的程序?
  • daemon程序的编写以及如何退出daemon程序?
  • 怎么用JBuild编写java console程序
  • 请问用jb7编写的程序是否可以超平台,即在win下写的程序是否可以在linux下运行?
  • 怎么编写后台程序?
  • 在windows下可以用Code::Blocks编写linux程序吗?
  • 我是编写ASP程序的,现在想学JAVA程序,请介绍几本入门书!提者有分!
  • linux下用java编写邮箱客户端程序与在windows下有什么不同??
  • 用GTK编写的程序程序,在我的机器上能用,并生成了可执行文件,可是!
  • 如何编写EJB的客户端程序?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 编写 linux shell 有什么好的编写工具呢?
  • VB编写的DLL不能被JAVA调用,用C将VB编写的DLL包装起来,做成一个新的DLL;用C编写的DLL可以被JAVA调用,用JAVA再进行一层的包装,因为JAV
  • 如图 scsi <---> scsi controller <---> pci <---> cpu 如果我想对scsi编写驱动我该对哪个部分编写?
  • 用什么工具编写JSP,可以象用InterDev编写ASP一样方便快捷?
  • socket中,从client端(用java编写的)传到server端(用c编写的)的字符串为何总多一个ASCII码为10的字符呀?
  • 如何用java编写一个NT平台下的标准服务?
  • 关于用vj编写sniffer一问。
  • Linux下如何编写脚本文件
  • Linux有没有类似bat文件,如何编写。
  • 用JAVA编写COM组件
  • 关于版本和bug管理的rule(规则)的编写
  • 函数互相调用时Makefile编写
  • AIX下如何编写批处理命令和计划任务
  • 如何在LINUX下用一个普通文件调用一个自己编写的调用系统的文件
  • 在C++程序中编写Lisp代码 InteLib
  • C和汇编编写的32位内核 ScorchOS
  • 快速编写HTML/CSS代码 Emmet
  • 用jsp 编写下拉或弹出式菜单
  • 使用editplus编写java如何编译成字节码文件,如何解释
  • 请问java用什么工具编写?在哪里运行?我刚开始学,不太懂,谢谢了


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3