导航:首页 > 源码编译 > vs编译失败中文

vs编译失败中文

发布时间:2023-03-08 16:57:13

Ⅰ vs2013运行出现问题,编译不了,提示fatal error C1069: 无法读取编译器命令

文件路径中含有中文且系统语言设置了使用 UTF-8 则可能出现此问题。

Ⅱ VS编译错误,如何解决

在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h"”? 编译器已经估计错误所在,你根据提示查找错误,在源文件中看看有没有#include "stdafx.h"这句话

Ⅲ 出现中文符号时,编译错误信息显示什么

Copyright © 1999-2020, CSDN.NET, All Rights Reserved



打开APP



System_sleep
关注
VS2019代码中包含中文内容导致的编译错误和打印输出乱码问题 原创
2022-06-25 17:45:47
2点赞

System_sleep

码龄11年

关注
前言
在VS2019中,如果代码中包含中文字符串定义或注释,会导致各种莫名其妙的编译错误,就算是运气好,编译没有报错,也会遇到控制台打印中文乱码的问题,让人倍感烦躁。

编译问题
1. 代码中定义了中文字符串常量导致编译错误:“常量中有换行符“ ;
2. 代码中包含中文注释导致编译错误:找不到XXX (宏、变量)、XXX不是常量/变量及由于找不到声明导致的其他问题;

打印乱码问题
代码打印中文字符串,在命令提示符输出是乱码;

解决方法,三种方法任选其一:
一. 修改代码文件格式为utf-8带签名,让MSVC编译器能够自动识别并以utf-8 BOM格式加载文件:

使用外部编辑器将代码文件保存为utf8-BOM格式;
或 打开代码文件,在VS2019 “高级保存选项” 中将代码文件保存格式选择为“Unicode-带签名“;

二. 修改代码格式:

修改中文字符串、中文注释的格式,在中文结尾处添加英文空格,让MSVC编译器能够以GBK编码方式加载编译中文utf-8编码字符串,可以解决编译报错问题,打印还是乱码;

三. 强制指定MSVC编译器加载代码文件的编码格式:

在VS2019“项目”-“工程属性”对话框-“C/C++”-“所有选项"子页,在“附加选项”内添加 “/utf-8” (等同于”/source-charset:utf-8 /execution-charset:utf-8");
在VS2019“项目”-“工程属性”对话框-“C/C++”-"所有选项"子页,在“附加选项”内添加 “/source-charset:utf-8 /execution-charset:gbk” (前者表示文件本身的编码,后者表示编译以后的字符数组内的字节是什么编码);

总结:
1. 如果是新建工程,推荐方法一,让所有新建代码文件都统一为utf-8 BOM 格式;
2. 如果是跨平台代码,且文件包含少量中文注释,可以尝试方法二;
3. 如果是已有的历史复杂工程(非使用工具导出的解决方案),可以尝试方法三, 但需要注意设置execution-charset时,要同时考虑到UI显示和打印二者对字符串编码的要求(可能不一致);

Ⅳ vs2019源码编译qt5.16失败

当在qt资源文件中加入过多图片时(22Mb),编译文件内容过大导致。编译时出现,系统找不到指定文件,路径使用绝对路径,源代码路径含有中文字体,编译时,源代码找不到路径。

Ⅳ VS2010编译运行的程序输出的中文都是乱码

在vc6.0中默认的编码是Ascii编码,VS2010中默认的编码是Unicode编码,你可以设置你的VS2010编译器中的字符编码为Ascii ,你可以将代码修改成
MessageBox(hwnd,(LPCWSTR)CString("OK"),(LPCWSTR)CString("显示"),0);
就可以啦

Ⅵ 为什么我的vs2010 总是编译失败

转载:
连接器LNK是通过调用cvtres.exe完成文件向coff格式的转换的,所以出现这种错误的原因就是cvtres.exe出现了问题。

在电脑里面搜索一下cvtres.exe,发现存在多个文件,使用最新的cvtres.exe替换老的文件即可,替换之前记得备份一下,如果不对,可以替换回来。

例如:我的电脑里面安装了vs2010,最近更新了系统,打了一些补丁,结果就出现这种错误了。在电脑里面搜索发现
C:\Program Files\Microsoft Visual Studio 10.0\VC\bin
C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7600.16385_none_ba476986f05abc65
C:\Windows\Microsoft.NET\Framework\v4.0.30319

这三个路径里面都有cvtres.exe文件,于是我尝试使用第二个路径里面的文件替换第一个路径的文件,问题解决。

参考资料如下:
http://stackoverflow.com/questions/10888391/link-fatal-error-lnk1123-failure-ring-conversion-to-coff-file-invalid-or-c/14144713#14144713

阅读全文

与vs编译失败中文相关的资料

热点内容
程序员在东南亚被毒打 浏览:284
php内存操作 浏览:6
1加手机号码放哪个文件夹 浏览:728
大兵程序员 浏览:785
青桔app福利中心在哪里 浏览:170
算法安全是智能化战争的博弈焦点 浏览:497
编译器用vs多少 浏览:316
pc单机游戏压缩包下载 浏览:570
服务器锁定什么意思 浏览:731
吐司解压神器 浏览:70
程序员的电脑一般用什么 浏览:934
如何从服务器中查询表是否存在 浏览:323
android首页布局源码 浏览:45
虎牙主播是怎么安卓投屏的 浏览:782
redmonk编程语言排行榜 浏览:110
android嵌入html5 浏览:676
云服务器能永久使用吗 浏览:904
linux安装openresty 浏览:386
ubunt配置php 浏览:975
达达取货码在app哪里 浏览:49