服务器放网站吗,公司的网 网站打不开,广渠路网站建设优易建站终身用,企业网站设置费用文章目录 [toc]1、概述2、修改已创建文件编码3、修改vscode默认编码 更多精彩内容#x1f449;内容导航 #x1f448;#x1f449;C #x1f448;#x1f449;开发工具 #x1f448;
1、概述 在使用MSVC编译器时#xff0c;出现中文报错的问题可能与编码格式有关。UTF-… 文章目录 [toc]1、概述2、修改已创建文件编码3、修改vscode默认编码
更多精彩内容内容导航 C 开发工具
1、概述 在使用MSVC编译器时出现中文报错的问题可能与编码格式有关。UTF-8是一种变长的Unicode编码方式它可以用来表示世界上几乎所有的字符。然而UTF-8编码有两种常见的形式UTF-8和UTF-8 with BOMByte Order Mark。UTF-8 without BOM是最常见的UTF-8编码形式它不包含BOM。BOM是一个特殊的字符序列EF BB BF用于标识文件的字节序。在UTF-8中字节序是固定的因此BOM在UTF-8中并不是必需的。然而一些编辑器和工具可能会在文件开头添加BOM以帮助识别文件的编码格式。MSVC编译器默认使用系统的本地编码如Windows-1252来处理源文件。如果源文件使用UTF-8 without BOM编码而编译器期望的是本地编码那么编译器可能会错误地解释文件中的字符导致中文报错。当使用UTF-8 with BOM编码时BOM可以帮助编译器正确识别文件的编码格式从而避免中文报错。这是因为BOM在文件开头明确标识了文件的编码为UTF-8编译器可以据此正确地解析文件中的字符。 环境版本IDEvscode系统windows11构建工具cmake编译器msvc2022-64
问题 使用msvc编译c程序时出现如果代码中有中文则会出现警告、输出乱码或者中文导致的编译失败如下所示
甯搁噺涓鏈夋崲琛岀 [E:\Code\C\test\build\test1.vcxproj]
璇娉曢敊璇: 缂哄皯鈥;鈥(鍦ㄢ€渳鈥濈殑鍓嶉潰) [E:\Code\C\test\build\test1.vcxproj]
璇ユ枃浠跺寘鍚涓嶈兘鍦ㄥ綋鍓嶄唬鐮侀〉(936)涓琛ㄧず鐨勫瓧绗︺€傝峰皢璇ユ枃浠朵繚瀛樹负 Unicode 鏍煎紡浠ラ槻姝㈡暟鎹涓㈠け [E:\Code\C\test\build\test1.vcxproj]2、修改已创建文件编码
对于已经存在的文件需要选择使用utf-8 bom编码重新保存文件
在vscode窗口右下角选择UTF-8 然后在弹窗中选择通过编码保存 选择使用UTF-8 with BOM编码然后就可以重新编译了 3、修改vscode默认编码
vscode默认使用的是utf-8编码需要修改为utf-8 bom编码。
如果一个文件一个文件该会非常麻烦修改vscode默认编码后新创建文件可以使用utf-8 bom编码。
选择【文件】【首选项】【设置】 选择【文本编辑器】【文件】将【Encoding】项改为使用UTF-8 with BOM 然后就可以正常编译并且输出中文了