#include <curses.h>
//左边的边界
#define LEFTEDGE 10
//右边的边界
#define RIGHTEDGE 30
//行号
#define ROW 10
int main(){
char *message = "Hello";
char *blank = " ";
int dir = +3;
int pos = LEFTEDGE;
initscr();
clear();
while(1){
//移动到坐标(10,pos)处
//初始时,位置为坐标(10,10)
move(ROW,pos);
//一行的显示
addstr(message);
//移动坐标到(右下角)处
move(LINES-1,COLS-1);
//将结果刷新到屏幕上
refresh();
sleep(1);
//移动到坐标(10,pos)处
move(ROW,pos);
addstr(blank);
//移动一个位置
//正负决定是向左还是向右移动
pos += dir;
//从左上角向右下叫移动
//如果到达右边的边界,反弹回来
if(pos >= RIGHTEDGE)
dir = -3;
//如果到达左边的边界,反弹回来
if(pos <= LEFTEDGE)
dir = +3;
}
}