c++ - 我无法在 Cygwin 中使用 Visual Studio 中的 cpp 文件
问题描述
我在 Visual Studio (VS) 中测试了我的 cpp 文件,并尝试在 Cygwin 中编译它以进行练习。
如您所见,在 VS 中,它是成功的。
但在 Cygwin 中,无法编译相同的文件..
看下面的图片
包括一堆警告,还有很多消息。主要错误是'
Coursera.cpp:1:1: 错误:程序中的流浪 '\377' ▒▒ ^
Coursera.cpp:1:2: 错误:程序中的流浪 '\376' ▒▒ ^
Coursera.cpp:17:4:错误:无效的预处理指令#i;你是说#if吗?辛 > > N ; ^ 如果
Coursera.cpp:19:2: 错误:'u' 没有命名类型 intnumb 1 = 0 , numb 2 = 0 ; ^
Coursera.cpp:25:2: 错误:'i' 没有命名类型 { ^
我花了将近一天的时间......任何人都可以帮助我吗?原因是什么? - - - - - - 添加
lich_@DESKTOP-B3ROGGV ~ $ g++ Coursera_UTF.cpp 在来自/usr/lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/bits/exception_ptr.h:38:0 的文件中,来自/usr/ lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/exception:142,来自/usr/lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/new:40,来自/ usr/lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/ext/new_allocator.h:33,来自/usr/lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/ x86_64-pc-cygwin/bits/c++allocator.h:33,来自 /usr/lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/bits/allocator.h:46,来自 /usr /lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++/vector:61,来自 Coursera_UTF.cpp:3: /usr/lib/gcc/x86_64-pc-cygwin/7.3.0/include/c++ /bits/cxxabi_init_exception.h:38:10:致命错误:stddef.h:没有这样的文件或目录#include ^~~~~~~~~~ 编译终止。
这是我将文件转换为 UTF-8 后得到的
解决方案
在菜单中选择另存为。在保存对话框中将有一个带有向下箭头的保存按钮。选择使用编码保存并选择 ascii。
默认情况下,Visual Studio 在创建文件时使用宽字符。
并非所有其他编译器都可以编译使用此编码保存的文件。
推荐阅读
- python - Python用数据框中的花药列替换字符
- javascript - 分片时启动代码时出现 UnhandledPromiseRejectionWarning
- ruby-on-rails - 迁移失败时如何加载最新的数据库模式
- java - 在 java docker 容器中重新绑定 RMI 端口
- php - 在引导 4 捆绑文件之后包含 js
- .net - Azure Functions 中的 StartNewAsync 和 CallActivityAsync 有什么区别
- python - 如何检查数据框中的单元格是否是来自不同列但同一行的另一个单元格的子字符串
- javascript - 检查按钮是否被多次点击
- reactjs - setState 数组更新但不删除前一个
- javascript - 我的 React Javascript 的代码覆盖率 Sonar Qube