首页 > 代码库 > ncurses库实现电子时钟
ncurses库实现电子时钟
1.创建graphics.c
2. 编辑graphics.c,编译:
gcc -o graphic graphic.c -L/usr/lib/i386-linux-gnu/ -lncurses
3.graphics.c的源码如下:
root@ubuntu:/mnt/shared/appbox/graphic# cat graphic.c #include <curses.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <ncurses.h> #include <unistd.h> #include <time.h> #include <string.h> #include <stdlib.h> #include <pthread.h> #include <errno.h> int main() { int x,y; //得到当前标准窗口的行和列数 time_t t; pthread_t thread; WINDOW *win; initscr(); //初始化标准窗口,必需滴 curs_set(0); //隐藏光标动态 noecho(); //输入无回显 getmaxyx(stdscr,y,x); //得到标准窗口的行和列数 win=newwin(5,40,y/2-5/2,x/2-40/2); //在标准窗口的中央创建一个窗口 refresh(); //刷新一下标准窗口,不然无法显示新建的窗口 wrefresh(win); //刷新一下新建的窗口 getmaxyx(win,y,x); //得到新建窗口的行数和列数 while(1) //无限循环 { t=time(NULL); //得到自某个时间到如今的所有秒数 mvwprintw(win,y/2,x/10,"["); //在新建的窗口中央输入日期和时间使用ctime函数进行转换 mvwprintw(win,y/2,x/2-(strlen(ctime(&t))+1)/2,"%s",ctime(&t)); //在新建的窗口中央输入日期和时间使用ctime函数进行转换 mvwprintw(win,y/2,4*x/5,"]"); //在新建的窗口中央输入日期和时间使用ctime函数进行转换 wrefresh(win); //刷新窗口,不然无法显示日期和时间 sleep(1); //挂起一秒 } endwin(); return 0; } root@ubuntu:/mnt/shared/appbox/graphic#
4. 输出如下:
[ Fri Dec 26 10:18:45 2014 ]
ncurses库实现电子时钟
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。