歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

Linux下程序庫Ncurses顯示中文亂碼的解決方法

  Ncurses是程序庫,使用最多的組件是窗體,在Linux系統操作中,不少朋友使用Ncurses的時候遇到中文亂碼問題,遇到該問題要如何處理呢?下面小編就給大家介紹下Linux使用Ncurses時出現中文亂碼的解決方法。

 Linux下Ncurses顯示中文亂碼怎麼辦?

  有幾個關鍵點:

  1.gcc編譯時用,gcc -lncursesw --verbose查看是否支持-lncursesw連接;

  2.代碼文件裡面,設置locale

  #include

  #include

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

  {

  setlocale(LC_ALL, “”);

  initscr();

  noecho();

  refresh();

  printw(“我來測試中文的/n”);

  getchar();

  return 0;

  }

  3.命令行執行apt-cache search libncursesw5,查看是否安裝ncurses庫

  發現我的linux不支持;在/usr/include/下發現有ncurses.h

  但是,沒有別人說的ncursesw目錄;

  後來發現,我裝了libncurses5,也裝了libncursesw5,導致-lncursesw選項不能用,我就把libncurses5卸載了,然後再重新裝libncursesw5;

  具體命令是

  1. apt-cache search libncurses5

  2. apt-get purge libncurses5

  3. sudo apt-get purge libncurses5-dbg

  4. sudo apt-get purge libncurses5-dev

  5. sudo apt-get autoremove

  6. sudo apt-get clean

  7. dpkg -l |grep ^rc|awk ‘{print $2}’ |xargs dpkg -P

  接著再安裝libncursesw5,命令如下

  1. sudo apt-get install libncursesw5

  2. sudo apt-get install libncursesw5-dbg

  3. sudo apt-get install libncursesw5-dev

  然後

  gcc -c test.o test.c

  gcc -o test test.o -lncursesw

  接著運行 。/test

  發現中文可以正常打印了

  上面就是Linux使用Ncurses出現中文亂碼的解決方法的介紹了,如果你在使用的過程中也出現了同樣的問題,又不知道要如何解決的話,不妨試試本文介紹的方法吧。

Copyright © Linux教程網 All Rights Reserved