藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月6日 10:18


curses的編輯器問題,請大俠幫我一下!!!!急!!!

我想做一個編輯器,可是當我編的時候就會報錯,說memory fault (dump....)
,我用fprintf()想把整個屏幕的字符當我按F1的時候就保存到一個文本中去,可是現在不行,請大俠幫我看一下,我等用!!! :(  :(

#include<curses.h>;
void initial();
main()
{
FILE *fp;
char filename[10];
char value;
int ch;
int x=0;
int y=0;
int i=0;

int j=0;
wrefresh(stdscr);
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':++y;
    x=0;
    break;
case '\t':x+=7;
    break;
case 127:
   mvaddch(y,--x,' ');
   break;

case KEY_F(1):
  printf("please enter your filename:");
  scanf("%s",filename);
  fp=fopen(filename,"wb");
   for(i=0;i<LINES;++i)
    {
       for(j=0;j<COLS;++j)
       {

         value=mvinch(i,j);
if (value==10)
         {
            ++i;
            j=0;
            value=mvinch(i,j);
            fprintf(fp,"%c",value);
         }
         else
            value=mvinch(i,j);
            fprintf(fp,"%c",value);
        }
    }

break;

case 27:
   endwin();
   exit(1);
default:
  addch(ch);
  x++;
  break;
}
  move(y,x);
}while(1);
}

void initial()
{
initscr();
cbreak();
nonl();
noecho();
keypad(stdscr,TRUE);
scrollok(stdscr,TRUE);
refresh();
}

curses的編輯器問題,請大俠幫我一下!!!!急!!!

y--, ++ x--, ++不判斷不出負數? 其它的?



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com