VS C++常见问题集锦

1.在Vs中编C出现这两个错误是什么原因 ?错误1:error LNK2005: _main 已经在 *** 中定义

错误1:error LNK2005: _main 已经在 ***中定义
错误2:error LNK1169: 找到一个或多个多重定义的符号

解决方案:一个工程里是可以包含多个.c 或 .cpp文件的,但只能有一个定义main函数。

2.

    微软网站对“向后兼容”和“向前兼容”的理解:
      (1)向后兼容。2007 Microsoft Office 系统向后兼容下列早期版本:Microsoft Office 2000、Microsoft Office XP 和 Microsoft Office 2003。这些版本的用户可以轻松地采用新的格式,并继续从现有文件中获得最大的益处。特别是他们还可以继续使用旧的 .doc、.xls 和 .ppt 二进制格式,这些格式与 2007 文件格式完全兼容。
      (2)向前兼容。应用程序的早期版本能够打开较新版本中的文件并忽略早期版本中未实现的功能。例如,Word 2003 向前兼容 Word 2007,因为它能够成功地使用转换器打开 Word 2007 文件。

西安电子科技大学的《计算机体系结构》的考题答案中给出兼容性的定义:
(1)向上(下)兼容指的是按某档机器编制的软件,不加修改就能运行于比它高(低)档的机器上。
(2)向前(后)兼容指的是按某个时期投入市场的该型号机器上编制的软件,不加修改就能运行于比它前(后)投入市场的机器上。

2.解决VS2017出现“是否忘记了向源中添加”#include"pch.h""问题

右键你的工作——>属性——>配置属性——>C/C++——>预编译头——>预编译头右边选择不使用预编译头,然后按确定,这时你就不会报错了

3.在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h"”?错误解决办法

解决办法:

对于每一个我们添加的cpp项中,都点击右键选择属性,然后在预编译头中选择:
不使用预编译头。

4.error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead.

用习惯了VS老版本的人当刚使用VS2013的时候可能总遇到类似于这样的错误:

    error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead.

    也就是所谓的安全检查错误。

解决:

在头文件包含的最前面,(在include的前面)加上:#define _CRT_SECURE_NO_WARNINGS这个宏定义即可,如下图所示。
 

GCC 是由 GUN 组织开发的,最初只支持C语言,是一个单纯的C语言编译器,后来 GNU 组织倾注了更多的精力,使得 GCC 越发强大,增加了对 C++、Objective-C、Fortran、Java 等其他语言的支持,此时的 GCC 就成了一个编译器套件(套装),是所有编译器的总称。

在这个过程中,gcc命令也做了相应地调整,它不再仅仅支持C语言,而是默认支持C语言,增加参数后也可以支持其他的语言。也就是说,gcc是一个通用命令,它会根据不同的参数调用不同的编译器或链接器。
 

发布了25 篇原创文章 · 获赞 139 · 访问量 116万+

猜你喜欢

转载自blog.csdn.net/shenwansan_gz/article/details/103691149
今日推荐