linux mv对应的库函数,Linux Ncurses库 (一): 库操作及函数使用

需要在ubuntu系统上安装库文件,支持ncurses:

apt-get install libncurses5-dev

initscr()函数:

initscr()用于初始化ncurses数据结构并读取正确的terminfo文件。内存将被分配。

如果发生错误,initscr将返回ERR,否则将返回指针。

此外,屏幕将被删除并初始化。

getyx() 函数:

getyx() 函数可以用来取得当前光标的位置。并把它存储在传递给它的两个变量中。

在指定的坐标输出

更新终端屏幕

endwin()函数:

endwin()将清除ncurses中所有已分配的资源,并将tty模式恢复为调用initscr()之前的状态 。

必须在ncurses库中的任何其他函数之前调用它,并且必须在程序退出之前调用endwin()。

当您想要输出到多个终端时,可以使用 newterm(...)而不是initscr()。

源程序:

#include

#include

#define DELAY 30000

int main(int argc, char *argv[])

{

int x = 0;

int y = 0;

int max_x = 0,max_y = 0;

int next_x = 0;

int direction = 1;

initscr(); /* 初始化屏幕 */

noecho(); /* 屏幕上不返回任何按键 */

curs_set(FALSE); /* 不显示光标 */

/* getmaxyx(stdscr, max_y, max_x);/* 获取屏幕尺寸 */

mvprintw(5, 5, "Hello, world!");

refresh(); /* 更新显示器 */

sleep(1);

while(1)

{

getmaxyx(stdscr, max_y, max_x);/* 获取屏幕尺寸 */

clear(); /* 清屏 */

mvprintw(y, x, "O");

refresh();

usleep(DELAY);

next_x = x + direction;

if(next_x >= max_x || next_x < 0)

{

direction = (-1) * direction;

}

else

{

x = x + direction;

}

}

endwin(); /* 恢复终端 */

}

Makefile:

# Makefile

cc=gcc

LDFLAGS=-lncurses

SRCS := $(wildcard *.c)

TARGET := $(SRCS:%.c=%)

$(TARGET):$(SRCS)

$(cc) $(LDFLAGS) $(SRCS) -o $(TARGET)

clean:

rm $(TARGET)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值