curse下面的键盘模式输入
来源:互联网 发布:网络商业计划书 编辑:程序博客网 时间:2024/05/18 06:26
代码如下:
#include <unistd.h>#include <stdlib.h>#include <curses.h>#include <string.h>#define PW_LEN 26#define NAME_LEN 256int main(){ char name[NAME_LEN]; char password[PW_LEN]; const char *real_password = "123456"; int i = 0; initscr(); move(5,10); printw("%s ","Please login:"); move(7,10); printw("%s", "User name:"); getstr(name); move(8,10); printw("%s", "Password:"); refresh(); cbreak(); noecho(); memset(password, '\0',sizeof(password)); while( i < PW_LEN) { password[i] = getch(); if(password[i] == '\n') break; move(8, 20+ i); addch('*'); refresh(); i++; } echo(); nocbreak; move(11,10); if(strncmp(real_password, password, strlen(real_password))== 0) printw("%s","Correct"); else printw("%s","Wrong"); refresh(); sleep(2); endwin(); exit(EXIT_SUCCESS);}
initscr函数在一个程序中只能调用一次。如果成功,它返回一个指向stdscr结构的 指针;如果失败,它就输出一条诊断错误信息并使程序退出。move(row,col)是到gotoxy的宏,将光标移动到指定行row和列col.
int printw(const char *fmt, ...); 和printf一样的用法吧。
这个程序利用命令进行编译:gcc 1.c -o 1 -lcurses
执行的效果如图所示:
输入密码如果是“123456” 结果是这样的
如果不是123456结果是这样的
1 0
- curse下面的键盘模式输入
- Curse的颜色使用
- ios UIView下面有UITextField,键盘弹出影响输入TextField的内容,解决办法
- 沉浸模式下键盘遮挡输入框的解决方案
- 控制键盘的输入
- VIM输入模式键盘映射教程
- 行列键盘的输入例程
- 行列键盘的输入例程
- windows下键盘的输入
- 商品类中怎么从键盘中输入个数???(下面程序中红字)谢谢
- 常见的出现login incorrect有下面几个原因: 1)大小写键盘问题,Ubuntu不认小键盘,所以一定要关掉NumLock,使用字母键盘上面的数字按键进行输入。
- iOS模拟器键盘的下面添加一个完成按钮
- 键盘上,在Esc下面的按键,『~』
- Android 下面调起键盘后的样式兼容性问题
- 键盘事件,中文输入时的键盘事件
- android Landscape模式下,禁止输入键盘全屏显示
- Android:键盘挡住输入框解决办法 ---- 软输入法模式选项:
- winio模拟键盘鼠标的输入
- bzoj 3238 差异
- Source Insight---自定义宏
- BZOJ 1269 splay
- 字符串的分隔方法 split()
- 博客转移到 http://blog.sxin.me
- curse下面的键盘模式输入
- 9.7总结
- 代码的规范性
- Permutations
- 递归解决全排列问题
- 数据重删技术概述
- spring入门介绍
- win10系统重装(备忘)
- 数据库访问性能优化