ROS终端显示中文的设置办法

问题叙述:
默认情况下,ROS_INFO是不支持中文编码的,如果在终端打印一些中文字符串,会显示一连串???????

解决方案:
将编码修改为utf8,程序开题添加如下代码:

setlocale(LC_CTYPE,"zh_CN.utf8");

setlocale()函数用于设置程序所使用的当前语言编码、日期格式、数字格式及其它与区域有关的设置,该函数位于头文件#include <locale.h>,对于C++程序,应该包含#include<locale>,但此时应这样初始化:std::locale::global(std::locale("")),方便起见,建议使用C版。

效果:
在这里插入图片描述
在这里插入图片描述


参考文献:

  • https://www.cnblogs.com/lanhaicode/p/10659763.html
  • https://blog.csdn.net/haiross/article/details/45074355
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章