分享
 
 
 

第七章:一些类似scanw()的输入函数——(NCURSES Programming HOWTO中文版)

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

第七章:一些类似scanw()的输入函数如果在屏幕上只是打印而没有输入的话,那样的程序是索然无味的。让我们来看看那些处理用户输入的函数。这些函数也被分为三类:

getch()类函数集:读取一个字符的一类函数。

scanw()类函数集:按照格式化读取输入的一类函数。

getstr()类函数集:读取字符串的一类函数。

7.1. getch()函数集这些函数将从终端读入一个字符。但是在使用它的时候需要考虑有些微妙的情况:比如你没有事先调用cbreak()函数的话,CURSES将不会连续读取你输入的字符,除非你输入了换行符或者文末符。为了避免这种情况的出现,在需要即时显示输入字符的程序中,必须先调用cbreak()函数。另外一个被广泛使用的函数是noecho()。这个函数被调用时,用户输入的字符不会将显示在屏幕上。cbeak()和noecho()是两个典型的用于键盘管理的函数。这类的函数将在键盘管理一章中说明。

7.2. scanw()函数集这些函数用法大体上和scanf()函数相似。只不过加入了能够在屏幕的任意位置格式化输入字符串的功能。

7.2.1. scanw()函数和mvscanw()函数scanw()函数的用法和sscanf()函数的用法基本相同。实际上,在调用scanw()函数时,是调用了wgetstr()函数,并将wgetstr()函数处理的数据结果传送到一个scanw()调用中。(wgetstr()函数将在下面详细介绍,写到这里是为了结构整齐。)

7.2.2. wscanw()函数和mvwscanw()函数这两个函数的用法和以上两个函数相似。区别在于它们从一个窗口中读取数据。所以,它们需要提供指定窗口的指针。

7.2.3. vwscanw()函数(vwscanw())这个函数和vprintf()相似。它用于输入变量表中所对应的变量。

7.3. getstr()函数集这些函数用于从终端取得字符串。本质上,连续使用getch()函数直到读到一个换行符(或文末符)和这个函数使用的结果是一样的。当健入后它会创建一个指向这个字符串的指针。

7.4. 例子

例4:一个简单的使用scanw()函数的例子。

#include <ncurses.h> /* ncurses.h 已经包含了stdio.h */

#include <string.h>

int main()

{

char mesg[]="Enter a string: "; /* 将要被打印的字符串信息 */

char str[80];

int row,col; /* 存储行号和列号的变量,用于指定光标位置 */

initscr(); /* 进入curses模式 */

getmaxyx(stdscr,row,col); /* 取得stdscr的行数和列数 */

mvprintw(row/2,(col-strlen(mesg))/2,"%s",mesg);

/* 在屏幕的正中打印字符串mesg */

getstr(str); /* 将指针str 指向读取的字符串 */

mvprintw(LINES - 2, 0, "You Entered: %s", str);

getch();

endwin();

return 0;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有