BBS水木清华站∶精华区

发信人: hellguard (小四), 信区: Unix        
标  题: Re: ncurses编程中的'\n'和'\r\n' (转载) 
发信站: BBS 水木清华站 (Mon Jan 10 15:02:35 2000) 
 
curses编程时的终端设置举例: 
 
struct termio originalTermParam, currentTermParam;  /* 终端的原始参数、当前参数 */ 
 
ioctl(serialPortFile, TCGETA, &originalTermParam);  /* 取终端参数回填到struct termio */ 
 
currentTermParam = originalTermParam; 
currentTermParam.c_iflag |= IGNBRK;   /* Ignore break condition. */ 
currentTermParam.c_iflag &= ~BRKINT;  /* Unset BRKINT */ 
currentTermParam.c_iflag &= ~ICRNL;   /* 如果设置了,则输入中的0D被转换成0A */ 
currentTermParam.c_iflag &= ~IXON;    /* disable start/stop output control */ 
currentTermParam.c_oflag &= ~OPOST;   /* characters are transmitted without change. */ 
currentTermParam.c_oflag &= ~ONLCR;   /* 如果设置了,则输出中的0A被转换成0D 0A对 */ 
currentTermParam.c_oflag &= ~OCRNL;   /* 如果设置了,则输出中的0D被转换成0A */ 
 
currentTermParam.c_lflag &= ~ICANON;  /* 不设置则允许最快速的读取字符 */ 
currentTermParam.c_cflag |= HUPCL; 
currentTermParam.c_cc[VMIN]  = 0;  /* 设置最快速的读取速度 */ 
currentTermParam.c_cc[VTIME] = 0; 
/* 从struct termio中取终端参数设置终端 */ 
if (ioctl(serialPortFile, TCSETA, &currentTermParam) != 0 ) { 
    return SYSERROR;  /* -1表示失败 */ 

 
-- 
 
            也许有一天,他再从海上蓬蓬的雨点中升起, 
            飞向西来,再形成一道江流,再冲倒两旁的石壁, 
            再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... 
 
※ 来源:·BBS 水木清华站 smth.org·[FROM: 203.207.226.124] 

BBS水木清华站∶精华区