主流操作系统平台的宏定义

 更新时间:2020年4月25日 17:42  点击:2140

复制代码 代码如下:

#ifndef QGLOBAL_H
#define QGLOBAL_H

#define QT_VERSION_STR   "3.1.2"
/*
   QT_VERSION is (major << 16) + (minor << 8) + patch.
 */
#define QT_VERSION 0x030102

/*
   The operating system, must be one of: (Q_OS_x)

     MACX - Mac OS X
     MAC9 - Mac OS 9
     MSDOS - MS-DOS and Windows
     OS2 - OS/2
     OS2EMX - XFree86 on OS/2 (not PM)
     WIN32 - Win32 (Windows 95/98/ME and Windows NT/2000/XP)
     CYGWIN - Cygwin
     SOLARIS - Sun Solaris
     HPUX - HP-UX
     ULTRIX - DEC Ultrix
     LINUX - Linux
     FREEBSD - FreeBSD
     NETBSD - NetBSD
     OPENBSD - OpenBSD
     BSDI - BSD/OS
     IRIX - SGI Irix
     OSF - HP Tru64 UNIX
     SCO - SCO OpenServer 5
     UNIXWARE - UnixWare 7, Open UNIX 8
     AIX - AIX
     HURD - GNU Hurd
     DGUX - DG/UX
     RELIANT - Reliant UNIX
     DYNIX - DYNIX/ptx
     QNX - QNX
     QNX6 - QNX RTP 6.1
     LYNX - LynxOS
     BSD4 - Any BSD 4.4 system
     UNIX - Any UNIX BSD/SYSV system
*/

#if defined(__APPLE__) && defined(__GNUC__)
#  define Q_OS_MACX
#elif defined(__MACOSX__)
#  define Q_OS_MACX
#elif defined(macintosh)
#  define Q_OS_MAC9
#elif defined(__CYGWIN__)
#  define Q_OS_CYGWIN
#elif defined(MSDOS) || defined(_MSDOS)
#  define Q_OS_MSDOS
#elif defined(__OS2__)
#  if defined(__EMX__)
#    define Q_OS_OS2EMX
#  else
#    define Q_OS_OS2
#  endif
#elif !defined(SAG_COM) && (defined(WIN64) || defined(_WIN64) || defined(__WIN64__))
#  define Q_OS_WIN32
#  define Q_OS_WIN64
#elif !defined(SAG_COM) && (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__))
#  define Q_OS_WIN32
#elif defined(__MWERKS__) && defined(__INTEL__)
#  define Q_OS_WIN32
#elif defined(__sun) || defined(sun)
#  define Q_OS_SOLARIS
#elif defined(hpux) || defined(__hpux)
#  define Q_OS_HPUX
#elif defined(__ultrix) || defined(ultrix)
#  define Q_OS_ULTRIX
#elif defined(sinix)
#  define Q_OS_RELIANT
#elif defined(__linux__) || defined(__linux)
#  define Q_OS_LINUX
#elif defined(__FreeBSD__)
#  define Q_OS_FREEBSD
#  define Q_OS_BSD4
#elif defined(__NetBSD__)
#  define Q_OS_NETBSD
#  define Q_OS_BSD4
#elif defined(__OpenBSD__)
#  define Q_OS_OPENBSD
#  define Q_OS_BSD4
#elif defined(__bsdi__)
#  define Q_OS_BSDI
#  define Q_OS_BSD4
#elif defined(__sgi)
#  define Q_OS_IRIX
#elif defined(__osf__)
#  define Q_OS_OSF
#elif defined(_AIX)
#  define Q_OS_AIX
#elif defined(__Lynx__)
#  define Q_OS_LYNX
#elif defined(__GNU_HURD__)
#  define Q_OS_HURD
#elif defined(__DGUX__)
#  define Q_OS_DGUX
#elif defined(__QNXNTO__)
#  define Q_OS_QNX6
#elif defined(__QNX__)
#  define Q_OS_QNX
#elif defined(_SEQUENT_)
#  define Q_OS_DYNIX
#elif defined(_SCO_DS)                   /* SCO OpenServer 5 + GCC */
#  define Q_OS_SCO
#elif defined(__USLC__)                  /* all SCO platforms + UDK or OUDK */
#  define Q_OS_UNIXWARE
#  define Q_OS_UNIXWARE7
#elif defined(__svr4__) && defined(i386) /* Open UNIX 8 + GCC */
#  define Q_OS_UNIXWARE
#  define Q_OS_UNIXWARE7
#else
#  error "Qt has not been ported to this OS - talk to qt-bugs@trolltech.com"
#endif

#if defined(Q_OS_MAC9) || defined(Q_OS_MACX)
#  define Q_OS_MAC
#endif

#if defined(Q_OS_MAC9) || defined(Q_OS_MSDOS) || defined(Q_OS_OS2) || defined(Q_OS_WIN32) || defined(Q_OS_WIN64)
#  undef Q_OS_UNIX
#elif !defined(Q_OS_UNIX)
#  define Q_OS_UNIX
#endif

[!--infotagslink--]

相关文章

  • .NET Core如何获取操作系统中的各种信息

    .net core是最近讨论频率很高的话题,下面这篇文章主要给大家介绍了关于利用.NET Core如何获取操作系统中各种信息的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧...2021-09-22
  • js获取本机操作系统类型的两种方法

    这篇文章主要介绍了js获取本机操作系统类型的方法,需要的朋友可以参考下...2015-12-21
  • linux操作系统安装MONO执行C#程序的详解步骤

    这篇文章主要介绍了linux操作系统安装MONO执行C#程序详解步骤,有需要的可以参考一下...2020-06-25
  • php判断当前操作系统类型

    如何使用php获取当前操作系统类型呢?严格来说这里分两种情况,一种情况是获取服务器端的操作系统类型,一种是获取客户端的操作系统类型。下面作者将对如何使用php获取这两种情况下的操作系统类型和大家做一些分享。 (1)php...2015-10-30
  • c#判断操作系统位数的示例分享

    这篇文章主要介绍了c#判断操作系统位数的示例,在.net 4.5中,判断操作系统不用再写方法去判断了,有直接可以利用的属性了哦...2020-06-25
  • 三星考虑旗下所有产品均采用Tizen操作系统

    据韩国时报报道,三星正计划让旗下所有产品采用Tizen操作系统,据称这是为了削减三星对Android平台的依赖性。一位三星电子高管表示,如果你没有自己的生态系统,那么你将没有前途。Tizen不只是为移动设备而开发的平台。这位高管承认,该公司在开发自己的平台和生态系统上已经比较晚,但表示,三星在这方面越来越有进步。...2016-07-04
  • 主流操作系统平台的宏定义

    这篇文章主要介绍了主流操作系统平台的宏定义,最近正在学习C++程序从Windows 平台向Unix 平台移植,参考了 qt 的宏定义文件,需要的朋友可以参考下...2020-04-25
  • C#实现判断操作系统是否为Win8以上版本

    这篇文章主要介绍了C#实现判断操作系统是否为Win8以上版本,本文讲解了利用C#获取OS的版本号、利用反射获取当前正在运行的程序的版本信息、 利用C#判断当前操作系统是否为Win8系统等内容,需要的朋友可以参考下...2020-06-25
  • 内联函数inline与宏定义深入解析

    类的内敛函数是一个真正的函数。使用内联函数inline可以完全取代表达式形式的宏定义...2020-04-25
  • C语言#define拼接宏定义实现方式

    今天小编就为大家分享一篇C语言#define拼接宏定义实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-25
  • C/C++宏定义的可变参数详细解析

    在1999年版本的ISO C 标准中,宏可以象函数一样,定义时可以带有可变参数。宏的语法和函数的语法类似...2020-04-25
  • C语言中的内联函数(inline)与宏定义(#define)详细解析

    内联函数与宏本质上是两个不同的概念如果程序编写者对于既要求快速,又要求可读的情况下,则应该将函数冠以inline...2020-04-25
  • solaris操作系统做c应用程序开发步骤

    solaris操作系统做c应用程序开发步骤,大家参考使用吧...2020-04-25
  • 浅谈内联函数与宏定义的区别详解

    本篇文章是对内联函数与宏定义的区别进行了详细的分析介绍,需要的朋友参考下...2020-04-25
  • Windows 操作系统的安全设置

    Windows 操作系统的安全设置 ,微软认证考试也需要学的。...2016-01-27
  • Perl操作系统环境变量的脚本代码

    想必很多朋友马上就会想到Perl中提供的$ENV这个特殊的哈希变量,对,在$ENV中完全可以获取到一些系统变量...2020-06-29
  • 开源的网页操作系统(Web OS),可以在线运行C,Java,Python代码

    本次为大家带来的是一篇开源的网页操作系统(Web OS),可以在线运行C,Java,Python代码的内容分享,个人感觉很有意思,下面请看详细的介绍。 呱哩哗啦网页操作系统,简称“GWOS...2017-07-06
  • 基于C中含有if的宏定义详解

    本篇文章是对C中含有if的宏定义进行了详细的分析介绍,需要的朋友参考下...2020-04-25
  • C语言中宏定义使用的小细节

    本篇文章是对C语言中宏定义使用的小细节进行了详细的分析介绍,需要的朋友参考下...2020-04-25
  • 浅谈do {...} while (0) 在宏定义中的作用

    下面小编就为大家带来一篇浅谈do {...} while (0) 在宏定义中的作用。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-04-25