Linux下程序库Ncurses显示中文乱码的解决方法

(编辑:jimmy 日期: 2024/10/3 浏览:2)

  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出现中文乱码的解决方法的介绍了,如果你在使用的过程中也出现了同样的问题,又不知道要如何解决的话,不妨试试本文介绍的方法吧。

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。