为什么 #include< bits/stdc++.h> 在 Windows 上默认不起作用?
Why #include<bits/stdc++.h> does not work by default on windows?
我已经在windows上安装了mingw-w64编译器。但是使用#include<bits/stdc++.h>在c++程序中,预处理器指令总是给出一个错误。如何解决这个问题?
bits/stdc++.h
不是标准头文件。因此,除非使用某些特定的编译器,否则不能保证它能正常工作。即使是同一编译器的不同版本也可能提供,也可能不提供
当它可用时,bits/stdc++.h
只是#include
的每个标准C++头文件。对于刚开始学习这门语言的人来说,这可能是有道理的,这样他们就不必担心弄清楚哪些内容是他们需要的,哪些内容是不需要的。但是使用它会减慢编译时间,在某些情况下可能会使可执行文件比需要的更大,并且(正如您所发现的(使代码不可移植。
唯一的解决方案是不使用它,而是#include
只使用您需要的特定标头。你真的是;假定的";按照程序进行;当您需要在标头中声明某个函数时,可以包含该标头,然后编写函数调用。一些IDE会告诉您每个函数需要哪个包含。
但如果你已经把代码都写好了,你就可以作弊了。只需删除#include <bits/stdc++.h>
行并尝试编译即可。如果编译器抱怨符号丢失或未定义,请在谷歌上搜索符号,找出它来自哪个标头,然后#include
。冲洗并重复,直到得到干净的编译。
问题是VS Code找不到<bits/stdc++.h>。它不包括在包含头文件的位置。所以我们只有将stdc++.h文件复制并粘贴到vscode的头文件中。因此,转到MinGw目录并搜索stdc++.h。打开其文件位置。现在回到bits文件夹并复制它。C: \MinGW\lib\gcc\mingw32\6.3.0\include\C++\mingw32
我们需要将此文件夹包含在vs代码头文件中。
现在转到程序文件(x86(打开Microsoft Visual Studio并导航到此位置C: \Program Files(x86(\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\include
现在将你的垃圾箱文件夹粘贴到这里。刷新visual studio代码,它应该可以正常工作
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 如何使用默认参数等选择模板专业化
- 具有默认模板参数的多态类的模板推导失败
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- 如何在 Windows 10 应用程序中访问C++默认线程池?
- 如何在Windows中将使用Qt制作的记事本设置为默认文本编辑器
- 如何在QT中获取Windows默认文件夹的本地名称
- C++ Windows API - 如何使用ListView的默认WIndows Proc?
- 默认的64位地址数据类型在Windows上
- 使用 C++ 获取默认的 Windows 文本编辑器.exe路径
- 如何获取 Windows xp gui 默认代码页
- 尝试在 Windows 10 上获取默认 Web 浏览器路径失败
- 如何设置默认的Windows工具包(SDK)版本
- 其中是windows服务创建文件的默认目录
- C++GUI Windows默认浏览器
- 是否有可能在Windows 7中抓取指向默认音频端点设备缓冲区的指针?
- PlaySound 仅播放默认"SystemAsterisk"声音(Windows 10、C++、Python)
- 在Windows 8 metro上构建默认的cocos2d-x项目
- 如何在c++中读取Windows默认网关IP地址
- 如何使用C++获取当前Windows操作系统版本7及更高版本的当前默认设置语言