使用VS2017遇到的一些小问题

一、去掉预编译头

使用VS2017的时候,发现总是会有“pch.h”,“stdafx.h”这类预编译头,去掉还会报错。作为新手的我,暂时用不到这些预编译头,于是想去掉它们。

右键项目->属性->C/C++->预编译头,如下图所示,然后选择不使用预编译头即可。

1139527-20190501233354179-1636744839.png

二、设置C++标准

用VS2017写C++的时候想设置一下C++标准,设置成C++14或C++17。

右键项目->属性->C/C++->语言,如下图所示,在C++语言标准选择想要的C++版本即可。

1139527-20190501233442421-1657958191.png

三、使用<bits/stdc++.h>头文件

因为直前用别的编译器都习惯用#include<bits/stdc++.h>都懒得打头文件了。然后,发现VS2017使用这个头文件会报错提示找不到,于是上网找了一下办法。

既然VS2017没有,我们就自己加上去,找到VS2017安装目录,然后找到include文件,我的文件路径是这个:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include

然后自己创一个bits文件夹,然后进入bits文件夹,创建stdc++.h文件,添加下面的内容:

// 17.4.1.2 Headers

// C
#ifndef _GLIBCXX_NO_ASSERT
#include <cassert>
#endif
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>

#if __cplusplus >= 201103L
#include <ccomplex>
#include <cfenv>
#include <cinttypes>
#include <cstdalign>
#include <cstdbool>
#include <cstdint>
#include <ctgmath>
#include <cwchar>
#include <cwctype>
#endif

// C++
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>

#if __cplusplus >= 201103L
#include <array>
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <forward_list>
#include <future>
#include <initializer_list>
#include <mutex>
#include <random>
#include <ratio>
#include <regex>
#include <scoped_allocator>
#include <system_error>
#include <thread>
#include <tuple>
#include <typeindex>
#include <type_traits>
#include <unordered_map>
#include <unordered_set>
#endif

1139527-20190501233503187-1578048502.png

1139527-20190501233518654-1232744878.png

添加完成之后,我们就能正常地使用#include<bits/stdc++.h>了。

转载于:https://www.cnblogs.com/fu3638/p/10801251.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
鱼刺类_多线程应用 - 更新日志 5.4.3(2017-12-01) *修正 修正鱼刺类_线程池Ex/线程池Ex一处很难被触发的BUG *修改 去除所有用到取启动时间的函数/方法 (修正在系统开机超过29天的机器上可能会出现问题) *修正 类回调_生成 部分系统配置兼容问题 5.4.2(2017-11-21) *增加 _取启动时间 可解决E自带函数遇到开机超过28天后返回负数问题 5.4.1(2017-10-20) *哇 这是哪 我是谁 我在写什么? 好像改了好多 但是因为爱偷懒睡觉 给忘了 5.4.0(2017-06-25) *替换了类回调方式,回调速度提升一倍 *部分代码重新启用了汇编化调用来提升效率 *优化和规范了整体代码,便于阅读理解 *简单封装了内存文件映射(作为私人模块,我基本是用到了什么才会往里封装什么) 5.3.1(2016-11-25) *修正了队列的一处BUG 5.3.0(2016-11-13) *修正了参数 实现了线程、线程池创建时可以调整初始栈大小来突破单进程1500线程数限制 *部分控件移除了汇编加减法的调用(效率存在问题) 5.2.0(2016-8-20) *封装了一些和线程应用息息相关的函数 -------------------------------------------------------------------- 作为易语言目前公认的最好用的线程模块 我个人是比较开心的 但还是有很多刚接触线程的小伙伴们或者已入坑很久的小伙伴们 对于线程还是表示一知半解 这些小伙伴们的表现为:对于代码基本靠套用 对于自己写出来的程序 基本就像玩具车 遥控车 对于这些小伙伴们 我在这里表示歉意 因为在两年前我答应他们会抽时间做一套比较容易理解的线程相关的教程 哎呀 主要是拖延症晚期患者 真的很烦啊 也不全是拖延问题 因为个人表达水平有限 真心不会按照大纲那样笼统的去讲解 文采坑的要命 (也就调戏妹子思路广点) 所以 我需要你们的帮助 我希望你们能把平时开发过程中遇到的线程方面的问题 都提出来 通过回帖 QQ 邮件 告诉我 然后我这边找个小伙伴来整理 最后定期使用语音会议方式来讲解这些问题 (我用语音聊天教授方式还是很强的  让我自言自语自述做教程 真心大 ) 鱼刺
允许用户自定义页面的字体大小、字体颜色和背景颜色的扩展。 A + FontSize Changer是一个Chrome扩展程序,可让用户自定义页面上的字体文本大小,文本颜色和背景颜色。实际上,它不像Chrome通过CTRL +和CTRL-缩放页面那样来更改每个元素的fontSize。有时您希望在不缩放页面的情况下增加文本大小,以使段落不会滚动到屏幕边缘之外 A + FontSize Changer在其他人失败的地方工作!即使在具有动态(ajax)内容的页面上!即使在使用iFrame的页面上!只需使用按钮更改字体大小或使用键盘快捷键ALT +和ALT-(或使用ALT +向上箭和ALT +向下箭。您可以在chrome:// extensions / shortcuts处更改这些热键)某些网页作者使用灰色文本颜色而不是黑色,这可能会给眼睛带来困难。使用A + FontSize Changer,您还可以更改页面上的文本颜色和背景颜色。使用此功能,您还可以创建自己的自定义“夜间模式”,在其中您可以自己选择文本颜色和背景颜色,并且不会反转图像或视频颜色,因此仍然可以看到它们。注意:iframe:如果使用ALT +或ALT-不会更改iframe中文本的字体大小,请先单击iframe,然后使用ALT +或ALT-。或者,您可以使用弹出菜单中的按钮,这将更改文档和iframe中的文本大小。对于Chrome浏览器来说,这是一个奇怪的限制。限制此扩展版的Lite版本在离开页面时不会保存自定义文本大小,颜色和背景色,也​​不允许您更改字体类型(字体系列)。版本历史记录2018/4/16-版本1.3.3-在弹出窗口中的按钮CSS中添加了“ user-select:none” 2018年4月6日-版本1.3.2-现在您可以使用ALT +向上箭和ALT +向下箭更改文本大小。您还可以在chrome:// extensions / shortcuts 2018/3/30上更改这些热键-版本1.3.1-删除了尝试使其与Google的新标签页一起使用的功能。对于道歉,没有意识到无法分辨出chrome:// newtab和创建自己的新标签的扩展名之间的区别 2018年3月22日-版本1.3.0-精简版和专业版-现在精简版也像Pro一样,以.1增量而不是.2增量更改字体大小。在Lite Edition中还修复了contentEditable错误,该错误会在用户更改为粗体或斜体时更改大小。错误修正:在调整大多数页面的字体大小之后,通过计算更改前的位置,然后设置更改后的滚动位置,可以将当前页面视图的滚动位置保持在同一位置。此版本还显示颜色选择器和颜色十六进制值的文本输入,因此您可以手动输入十六进制颜色或使用颜色选择器。此外,新设置还添加了“下划线链接”。因此,用户可以选择更改颜色时是否在链接上加下划线。默认值为“下划线链接”,因为在大多数网站上,当链接的颜色与页面上其余文本的颜色相同时,将很难看到它们。但是某些用户不希望链接带有下划线。现在,如果在更改文字大小后行高过小,则会调整行高 2018年3月21日-版本1.2.9-专业版和版本1.2.5-精简版-现在使用自定义颜色选择器而不是HTML 5颜色选择器,因为现在某些Windows用户遇到的错误与Mac OS用户相同具有HTML 5颜色选择器窗口打开和扩展弹出窗口关闭的功能。使用自定义颜色选择器可修复该错误 2017年5月8日-版本1.2.4-在专业版中,您现在可以为您访问的每个网站更改字体类型(字体系列),然后将保存字体系列 2017年4月20日-版本1.2.3-在扩展程序弹出窗口中添加了注释,说明扩展程序不适用于特殊的chrome://页面或Chrome网上应用店 2017年4月12日-1.2.2-Mac OS X的错误修复。我相信我已经修复了一些Mac用户遇到的无法更改颜色的错误。显然,Chrome扩展程序在使用HTML 5颜色选择器的Mac OS中存在一个错误,该问题是当颜色选择器打开时,扩展程序弹出窗口关闭,导致弹出窗口无法识别颜色命令。现在为Mac用户使用其他颜色选择器 2017年4月9日-1.2.1-向颜色选择器添加了更改事件,以查看是否可以解决某些无法更改文本颜色或背景颜色的用户的问题 2016/9/12-1.2-现在,当您首次安装此扩展程序或将其禁用并重新启用时,您可能不必重新加载当前页面 2015年8月12日-1.1-修复了警报“错误:无法建立连接。”首次安装扩展程序时,单击A +图标时。现在,它告诉用户刷新页面 2015年8月12日-1.0-创建了A + FontSize Changer 支持语言:English
C语言课程设计是一个旨在帮助学生深入理解和应用C语言编程的实践项目。以下是一些关于C语言课程设计的基本步骤和建议: 明确目标和需求:首先,你需要与授课教师或课程设计的相关人员沟通,明确课程设计的需求。这包括了解课程设计的主题、目标以及需要解决的问题。这将有助于你确定设计的范围和方向。 选择项目主题:选择一个与C语言相关的项目主题。例如,你可以设计一个学生成绩管理系统、一个简单的文本编辑器或一个游戏等。确保所选主题既具有挑战性又能够展示你的C语言编程技能。 进行问题分析:一旦确定了项目主题,你需要对问题进行深入分析。这包括确定问题的输入和输出、理解问题的要求和限制条件,以及将复杂问题分解为更小的子问题。这将有助于你更好地理解和解决问题。 设计算法和数据结构:针对项目需求,设计合适的算法和数据结构。这包括确定如何存储和处理数据、如何设计函数和模块等。 编写代码:使用C语言编写代码,实现项目功能。注意遵守C语言的语法规则,确保代码的可读性和可维护性。 测试和调试:在编写完代码后,进行测试和调试。确保代码能够正确运行并满足项目需求。使用调试工具和技术来查找和修复代码中的错误。 文档编写:编写项目文档,包括项目说明、功能介绍、代码注释等。这将有助于其他人理解你的项目并复用你的代码。 提交和展示:最后,将你的课程设计项目提交给教师或相关人员,并在课堂上进行展示。展示时可以介绍项目的功能、实现过程以及遇到的挑战和解决方案等。 在进行C语言课程设计时,还需要注意以下几点: 遵守编程规范,包括变量命名、代码缩进、注释等。 充分利用C语言的特点和优势,如指针、结构体、文件操作等。 注重实践和应用,通过解决实际问题来加深对C语言的理解和应用能力。 在遇到困难时,及时向教师或同学请教,并查阅相关资料和文档。 通过以上步骤和建议,你可以完成一个高质量的C语言课程设计项目,并提升自己的编程能力和实践经验。
预编译文件今天在改一个很大的程序,慢慢看,慢慢改。突然发现一个.c文件,里面什么也没有,就几个文件,我一看,我靠,这不是把简单的问题搞复杂了吗,随手删掉那个c文件。结果不能编译了,我靠:fatal error C1083: Cannot open precompiled header file: \'Debug/v13_3.pch\':No such file or directory怎么rebuild all都不行。上网查了一下,才搞懂了:----------------总结------如果工程很大,文件很多,而有几个文件又是经常要用的,那么1。把这些文件全部写到一个文件里面去,比如写到preh.h2。写一个preh.c,里面只一句话:#include "preh.h"3。对于preh.c,在project setting里面设置creat precompiled headers,对于其他.c文件,设置use precompiled header file//哈哈我试了一下,效果很明显,不用precompiled header,编译一次我可以去上个厕所,用precompiled header,编译的时候,我可以站起来伸个懒腰,活动活动就差不多啦---------转载的文章----------预编译的概念:所谓的预编译就是把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是以.pch为扩展名的),这个文件就称为预编译文件这些预先编译好的代码可以是任何的C/C++代码--------甚至是inline的函数,但是必须是稳定的,在工程开发的过程中不会被经常改变。如果这些代码被修改,则需要重新编译生成预编译文件。注意生成预编译文件是很耗时间的。同时你得注意预编译文件通常很大,通常有6-7M大。注意及时清理那些没有用的预编译文件。也许你会问:现在的编译器都有Time stamp的功能,编译器在编译整个工程的时候,它只会编译那些经过修改的文件,而不会去编译那些从上次编译过,到现在没有被修改过的文件。那么为什么还要预编译文件呢?答案在这里,我们知道编译器是以文件为单位编译的,一个文件经过修改后,会重新编译整个文件,当然在这个文件里包含的所有文件中的东西(.eg Macro, Preprocesser )都要重新处理一遍。VC的预编译文件保存的正是这部分信息。以避免每次都要重新处理这些文件。预编译的作用:根据上文介绍,预编译文件的作用当然就是提高便宜速度了,有了它你没有必要每次都编译那些不需要经常改变的代码。编译性能当然就提高了。预编译使用:要使用预编译,我们必须指定一个文件,这个文件包含我们不会经常改变的代码和其他的文件,然后我们用这个文件来生成一个预编译文件(.pch文件)想必大家都知道 StdAfx.h这个文件。很多人都认为这是VC提供的一个“系统级别”的,编译器带的一个文件。其实不是的,这个文件可以是任何名字的。我们来考察一个典型的由AppWizard生成的MFC Dialog Based 程序的预编译文件。(因为AppWizard会为我们指定好如何使用预编译文件,默认的是StdAfx.h,这是VC起的名字)。我们会发现这个文件里包含了以下的文件:#include // MFC core and standard components#include // MFC extensions#include // MFC Automation classes#include // MFC support for Internet Explorer 4Common Controls#include <br

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值