Keil5编译UTF8码中文字符串报错

Preface

最近想要在STM32平台传入中文字符串,一般keil默认选择的都是GB2312,服务器端需要视情况转换一下才可以正常显示。

Text

于是,我们把编码方式改成UTF-8,路径:Edit-Configuration-Editor-Encoding
完成之后编译,发现有几个字符串编译出错,有几个可以通过。
这个时候需要点击魔术棒设置工程选项,选择C/C++,在Misc Controls中加上:

--no-multibyte-chars

编译测试成功。

End

不过,最后我还是没有用上,因为之前已经有很多中文注释了,仅仅因为这几个静态中文字符串改变编码格式以后注释乱码也很麻烦,于是还是老老实实用自己的字符转换函数解决了。

参考链接:
UTF-8,Unicode,GB2312编码转换(C语言)

你可能感兴趣的:(计算机编码,软件工具使用)