[C++]Linux之图形界面编程库[curses库]之入门教程
1. 安装
//方法一
sudo apt-get install libncurses5-dev 【 ubuntu 16.04:亲测有效】 //方法二
sudo apt-get install ncurses-dev //方法三【手动,ubuntu 16.04 测试:ncurses-6.0.tar.gz 版本 编译错误,无法使用】
step1:下载安装包:
手动下载:http://ftp.gnu.org/pub/gnu/ncurses/
或者 wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-<version>.tar.gz【与手动效果一致,且文件将下载在命令行所处的文件夹下】 step2:tar zxvf ncurses<version>.tar.gz
【解释/辨析】
tar -z, --gzip, --gunzip --ungzip fileame:对经过gzip压缩的tar备份文件,使用gzip解压
gzip -d fileame:对gzip文件解压
tar -x,--extract,--get fileame:从备份文件中还原文件
tar -v,--verbose fileame:显示指令执行过程
tar -f,--file fileame:指定备份文件 step3: 切换到超级用户
安装需要切换到root权限:su root step4:cd ncurses<version> 进入解压缩的目录(注意版本) step5:./configure 按照你的系统环境制作安装配置文件 step6:进入解压的文件夹下,有一个 ncurses目录(其目录下含MakeFile文件夹),执行编译
make step7:make install 安装编译好的NCURSES库 step8:检测是否安装好?
cat /usr/lib,查看是否有libncurses.so或libncurses.a这个库
2.执行与使用curses库
//step1:在c/c++程序中,引入库<curses.h> //step2:【很重要】命令行显式链接动态库,否则:可能可以看到如下图所示错误
gcc program.c -o program -l curses 【gcc -l 库名:指定加入动态链接库】(c程序)
或者
g++ program.c -o program -l curses 【g++ -l 库名:指定加入动态链接库】(c++程序)
【图中错误原因:curses 不是linux里默认的C函数库编译时应该 加上 -l curses搜索gcc xx.c -o xx -l curses】
测试DEMO【非亲测】
include <unistd.h>
#include <stdlib.h>
#include <curses.h> int main() {
initscr();
move( 5, 15 );
printw( "%s", "Hello world" );
refresh();
sleep(2);
endwin();
exit(EXIT_SUCCESS);
}
执行: g++ test.c -l ncurses && test.out
参考文献:
【Linux下的Curses库的下载与安装】(http://blog.csdn.net/damotiansheng/article/details/40106249)
【Linux下curses函数库】(https://www.cnblogs.com/dandingyy/archive/2012/08/23/2651644.html)
【getnstr(), getstr(), mvgetnstr(), mvgetstr(), mvwgetnstr(), mvwgetstr(), wgetnstr(), wgetstr()】(https://www.mkssoftware.com/docs/man3/curs_getstr.3.asp)
[C++]Linux之图形界面编程库[curses库]之入门教程的更多相关文章
- Linux C 程序 GTK+图形界面编程(22)
GTK+图形界面编程 Linux大多是在字符界面,但也可以开发图形界面 目前已经存在多种Linux下开发图形界面的程序开发包:最常用的是Qt和GTK+ Qt是一个跨平台的图形界面开发库,不仅仅支持Li ...
- python在linux制作图形界面(snack)
snack是一个用于在linux制作图形界面(GUI)的模块,该模块由c编写,而且redhat的系统都自带这个模块. 1.获取模块 虽然redhat系统会自带这个模块,但是直接去import snac ...
- Java中的图形界面编程
前言 正文 Java中的图形界面编程 AWT/Swing AWT(Abstract Window ToolKits,抽象窗体工具集) 1.容器类:用来存储组件,实现容器布局 2.组件类:实现界面的一些 ...
- C语言控制台窗体图形界面编程(总结)
本系列文章是笔者通过学习<C语言控制台窗体界面编程(修正版)>而写(关于此文档的很多其它信息请看本系列文章第一篇),旨在让大家更加清晰简洁easy地学习C语言控制台窗体界面的编程. 通过本 ...
- python 教程 第十九章、 图形界面编程
第十九章. 图形界面编程 import Tkinter top = Tkinter.Tk() hello = Tkinter.Label(top, text='Hello World!') hello ...
- 图形界面编程成就了C++
听有人说C#.VB比C++好是因为做界面方便还算傻得可爱,听有人说用C++做数值计算而不屑于做界面可就对不起咱C++的恩人了.这我可要说道说道. 想当年C++刚出江湖,名门出身,自立门派,想抢Obje ...
- 【情人节选帽子】TCS34725颜色传感器和Python图形界面编程(STM32 HAL库)
截图 描述: l STM32 HAL库编程 l 使用模拟IIC通信,方便程序移植 l Python界面编写,蘑菇头的帽子是什么颜色 l STM32 HAL库串口通信 l Python界面使用 ...
- unix/linux中图形界面那些事
我们知道unix/linux刚开始的时候是没有图形界面的,随着时代的发展,排版.制图.多媒体应用越来越普遍了,这些需求都需要用到图形界面(Graphical User Interface).为此,MI ...
- Linux 安装图形界面及远程连接
#可查询哪些组件是否已经安装(可用来对照组件名称) yum grouplist yum groupinstall 'X Window System' -y #安装GNOME桌面环境 yum group ...
随机推荐
- centos网络yum源的安装
CentOS使用EPEL YUM源EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHE ...
- WINFORM 多条件动态查询 通用代码的设计与实现
经常碰到多条件联合查询的问题,以前的习惯认为很简单总会从头开始设计布局代码,往往一个查询面要费上老半天的功夫,而效果也不咋地. 前段时间做了个相对通用的多条件动态查询面,复用起来还是挺方便的, ...
- CnPack实用功能推荐
已经使用CnPack好几年了,这个插件太好了,现在离开它我都不会写代码了,现在将使用心得与大家分享一下: 1.代码助手非常好用,只需要输入几个字符后,自动出现提示列表,真是懒人的福音呀. 2.代码高亮 ...
- Guava的RateLimiter在单机限流中的正确用法
错误使用 在实现限流时,网上的各种文章基本都会提到Guava的RateLimiter,用于实现单机的限流,并给出类似的代码: public void method() { RateLimiter ra ...
- Python——多进程
进程的实例 # -*- coding:UTF-8 -*- import os import time from multiprocessing import Process #进程 def func( ...
- \r\n
转载自http://www.studyofnet.com/news/285.html '\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格,通常敲一个回车键,即是回车,又是换行(\r\ ...
- Jenkins-Multijob plugin多任务串并行
由于项目采用分布式服务架构,后端拆分为对外提供接口的接口层和对内提供服务的服务层,而服务层项目A又引用项目B和C服务,这时发布时就要求先发布A,再发布B和C,最后再发布接口项目. 经过一番查找,找到了 ...
- MYSQL数据插入和更新的语法
tag:原文章地址 经常会遇到一行数据在特定条件下如果存在就更新列,不存在就插入新的行,用replace和duplicate语法都可以实现,但是也是有区别的.如果是数据覆盖就用replace,如果只是 ...
- 找到第一个只出现一次的字符并返回它的位置(Python)
s = 'hellobaby' def findchar(s): for i in s: if s.count(i)==1: return i, s.index(i) m,n=findchar(s) ...
- 逆向---03.mov、test等汇编指令、EAX、关键Call、OD调试技巧
上一篇:逆向---02.je & jmp & jnz .OD调试 基础知识:(栗子中也会说的)栗子:链接: https://pan.baidu.com/s/1qZbbTvQ 密码: i ...