(10)scanw()函數
能夠在屏幕的任意位置讀入格式化字符串。
(11)wscanw()函數和mvwscanw()函數
從一個窗口中讀取數據
getstr()系列函數
這些函數用於從終端讀取字符串。本質上,這個函數執行的任務和連續用getch()函數讀取
字符的功能相同:在遇到回車符、新行符和文末符時將用戶指針指向該字符串。
示例如下:
dp@dp:~/cursestest % cat 1.c
#include
#include
#include
int main()
{
char mess[]="您的性別:"; /* 將要被打印的字符串信息*/
char mesg[]="您的名字:"; /* 將要被打印的字符串信息*/
char name[80];
char sex[10];
int row,col; /* 存儲行號和列號的變量,用於指定光標位置*/
setlocale(LC_ALL,"");
initscr(); /* 進入curses 模式*/
getmaxyx(stdscr,row,col); /* 取得stdscr 的行數和列數*/
mvprintw(row/2,col/2-strlen(mesg),"%s",mesg); /* 在屏幕的正中打印字符串mesg */
getstr(name); /* 將指針name 指向讀取的字符串*/
mvprintw(row/3,col/2-strlen(mess),"%s",mess); /* 在屏幕的正中打印字符串mesg */
getstr(sex); /* 將指針sex向讀取的字符串*/
char man[]="man";
if (strcmp(sex,man)==0) {
mvprintw(LINES-2,0, "%s先生好,很高興認識您", name);//LINES為當前行數
}
else
{
mvprintw(LINES-2,0, "%s女士好,很高興認識您", name);//LINES為當前行數
}
refresh();
getch();
endwin();
return 0;
}
編譯並執行程序:
dp@dp:~/cursestest % gcc -lncursesw 1.c -o mytest
dp@dp:~/cursestest % ./mytest