[英]Ncurses, Convert the int value to char pointer in C
我在 C 中使用 Ncurses 創建輸入和 output window。當用戶輸入內容時,我想使用mvwprintw()
將字符串顯示到 output window。我將wgetch()
的返回值存儲在一個數組中, 如何將 int 數組轉換為 char 指針
/* cmd is an array already have the int value for the character,
I declare it like char cmd[100], and store the int value return by wgetch() into
it*/
char realcmd[100];
for (int i = 0; i < 100; i++) {
if (cmd[i] == 0){
realcmd[i] = '\0';
}
else{
realcmd[i] = cmd[i] + 0;
}
}
這就是我將 int 數組轉換為 char 指針的方式,但我只得到第一個字符。 例如,如果我輸入" hello world"
,我只會得到'h'
。
你怎么稱呼 function mvwprintw()
?
您將哪種格式字符串用作第四個參數? 在我看來,您使用 char ( %c
) 轉換限定符而不是字符串 ( %s
) 限定符。
嘗試這個:
mvwprintw(win, 0, 0, "%s", realcmd);
mvwprintw()
使用與printf()
相同的轉換限定符。 您可以在mvwprintw()
的手冊頁中閱讀此內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.