簡體   English   中英

Ncurses,將C中的int值轉為char指針

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM