导航:首页 > 源码编译 > 判断编译器是mevc

判断编译器是mevc

发布时间:2023-06-01 22:51:17

㈠ 如何在C语言中用宏来判断当前编译

1、_MSC_VER 是微软C/C++编译器——cl.exe 编译代码时预定义的一个宏。需
要针对cl 编写代码时, 可以使用该宏进行条件编译。
2、_MSC_VER 的值表示cl 的版本。需要针对cl 特定版本编写代码时, 也可以使用
该宏进行条件编译。
3、_MSC_VER 的类型是"int",具体版本号定义如下:
MS VC++ 9.0 _MSC_VER = 1500
MS VC++ 8.0 _MSC_VER = 1400
MS VC++ 7.1 _MSC_VER = 1310
MS VC++ 7.0 _MSC_VER = 1300
MS VC++ 6.0 _MSC_VER = 1200
MS VC++ 5.0 _MSC_VER = 1100
其中MS VC++ 9.0 就是Visual C++ 2008,MS VC++ 8.0 就是Visual C++2005。
二、介绍预定义宏“__GNUC__”
1、__GNUC__ 是gcc 编译器编译代码时预定义的一个宏。需要针对gcc 编写代码时,
可以使用该宏进行条件编译。
2、__GNUC__ 的值表示gcc 的版本。需要针对gcc 特定版本编写代码时,也可以使
用该宏进行条件编译。
3、__GNUC__ 的类型是“int”
三、预定义宏"__MINGW32__"
1、MinGW编译器
四、symbian sdk 预定义宏:
symbian 平台,定义"__SYMBIAN32_"
3rd MR 版及之前的那个3rd 版本,定义"__SERIES60_30__"
3rd FP1 版,定义"__SERIES60_31__"
3rd FP2 版,定义"__SERIES60_32__"
另外,还有一个"__SERIES60_3x__"。若不需区分具体是哪一个3rd 版,则用之。

㈡ vc判断是32位编译还是64位编译判断是debug编译还是release编译

1.判断是debug编译还是release编译。
如果_DEBUG定义了表示是debug编译,否则是release编译。

2.判断是32位编译还是64位编译。
在 Win32 配置下,_WIN32 有定义,_WIN64 没有定义。在 x64 配置下,两者都有定义。即在 VC 下,_WIN32 一定有定义。
因此,WIN32/_WIN32 可以用来判断是否 Windows 系统(对于跨平台程序),而 _WIN64 用来判断编译环境是 x86 还是 x64。附一个表:

常量\定义 预定义选项 Windows.h VC编译器
WIN32 Win32 √(minwindef.h) ×
_WIN32 × × √
_WIN64 × × x64

最后附上根据相应编译情况,进行有条件的链接相应静态库的示例代码,其实就是一些宏定义语句的使用:

[cpp] view plain在CODE上查看代码片派生到我的代码片
#include "json/json.h"
#ifdef _DEBUG
#ifndef _WIN64
#pragma comment(lib,"json/json_mtd.lib")
#else
#pragma comment(lib,"json/json_mtd_x64.lib")
#endif
#else
#ifndef _WIN64
#pragma comment(lib,"json/json_mt.lib")
#else
#pragma comment(lib,"json/json_mt_x64.lib")
#endif
#endif
using namespace Json;

㈢ GCC是什么编译器跟vc自带的有什么不同

GCC的全称是GNU Compiler Collection
是GNU下属的编译器集合, 包括C/C++, JAVA, Perl, Python等语言.

你问他和VC有什么不同?
我要告诉你的是:

1、GCC是一个编译器集合, VC是MS开发的Windows系统C/C++ IDE.

2、GCC中的C/C++标准库代码和VC肯定是不同的, MS一般都是从别人那买来用, 比如Dinkumware, GCC C/C++的标准库就是GNU自己写的了, 当然这遵循GPL, MS虽然也可以免费拿来用, 但是MS历来仇视GPL和Linux. 还有就是GCC C/C++的标准库对C/C++标准的貌似是最好的.

3、Linux的桌面操作系统基本都集成安装了KDE(K Desktop Environment), X-Windows等图形操作系统界面, 所以各种包装了GCC编译器内核的IDE应运而生, 比如Ubuntu, Mandriva, Fedora, Debian等操作系统中都有自带的GCC IDE, 当然你也可以用Commond Line来操作和编译代码.

㈣ 如何查看编译器当前使用的是哪个c++标准

这个要看不同编译器的发布说明了,比如VC,就是检查_MSC_VER这个宏(查看下网络和MSDN参考),标识了VC的版本,而对于C++11/14 VC也是逐步支持的,即某个版本的VC会增加支持C++11的某些特性,这些要到微软的VC官方博客上查看

㈤ 如何在C语言中用宏来判断当前编译器

不同编译器有不同的宏,具体某个编译器在某种编译选项下定义了哪些宏必须要查编译器的相关文档

例如,GCC 编译器对应的预定义宏是 __GNUC__,用

#if__GNUC__

即可判断是否在使用 GCC 编译器。__GNUC__ 的具体值对应GCC的主版本号。例如 对于GCC 4.9 ,__GNUC__ 等于 4,对于 GCC 5.1 ,__GNUC__ 等于 5,次版本号可以通过 __GNUC_MINOR__ 查询。对于 GCC 4.9,__GNUC_MINOR__ 等于 9,对于GCC 5.1,__GNUC_MINOR__等于 1


VC 的编译器对应的预定义宏是 _MSC_VER,用

#if_MSC_VER

即可判断是否在使用 VC 的编译器。_MSC_VER 的值同样以某种方式对应于编译器的版本,不过对应方式就复杂得多,再加上 VC 编译器的版本号以不规则的方式增长,所以找各种版本测试 _MSC_VER 的值恐怕更可靠


其他编译器也可能定义 __GNUC__ 或者 _MSC_VER 来表示自己兼容这些编译器,例如 clang 也定义了 __GNUC__ 。不过既然它声明了兼容性,除非测试确认了实际行为并不兼容,否则把它当成 GCC 也并无不可

㈥ 什么是VC什么是VC++什么又是C++

C++是一种编程语言,我们知道电脑是由CPU,主板等硬件来运作的,但是这些之间运作是怎样配合的呢,这就要靠人为的因素,是我们人来给他输入指令的(指令跟软件不同,软件是实现某些功能的指令的集合),这些主令是那里来的,这就是我们所说的编程语言了,每一种编程语言都自己的编译器,编译器是与硬件打交道的,我们在编译器里写程序,经过编译器的处理后,生成与硬件打交道的机器指令,刚才提到编译,这就是答你的VC是什么,VC就是一个编译器,是一个针对C++这种语言的编译器,我们用C++在上面写程序,然后再经过他内部复杂的运算,把我们的程序转换成机器指令.

阅读全文

与判断编译器是mevc相关的资料

热点内容
数控三通编程 浏览:298
linux多终端 浏览:811
法律写作pdf 浏览:144
国货哪个品牌最好app 浏览:951
看哪个app给钱最多 浏览:178
编程靠经验吗 浏览:759
c教程pdf下载地址 浏览:573
制作视频哪个app有瘦脸功能 浏览:649
linux查看线程内存 浏览:509
命令行签名apk 浏览:92
网页照片旋转源码 浏览:842
QQ会员头像源码 浏览:263
内核命令行 浏览:324
脚本提取源码器 浏览:930
smo源码 浏览:877
为什么要搭建单独服务器 浏览:480
编译器有什么控制 浏览:893
希尔伯特pdf 浏览:645
php数组全数字 浏览:647
解密塔罗牌小程序源码 浏览:862