当前位置: 首页 > news >正文

QT如何检测当前系统是是Windows还是Uninx或Mac?以及是哪个版本?

简介

通过Qt获取当前系统及版本号,需要用到QSysInfo
QSysInfo类提供有关系统的信息。
WordSize指定了应用程序编译所在的平台的指针大小。
ByteOrder指定了平台是大端序还是小端序。
某些常量仅在特定的平台上定义。您可以使用预处理器符号Q_OS_WINQ_OS_MACOS来测试应用程序是否在WindowsmacOS下编译。

常用函数

以下函数是获取系统信息的函数。

  • buildCpuArchitecture():构建CPU架构
  • currentCpuArchitecture():当前CPU架构
  • buildAbi():构建ABI(应用程序二进制接口)
  • kernelType():内核类型
  • kernelVersion():内核版本
  • productType():产品类型
  • productVersion():产品版本
  • prettyProductName():产品名称

示例

需引用头文件:

#include <QSysInfo>
    qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::buildCpuArchitecture();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::currentCpuArchitecture();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::buildAbi();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::kernelType();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::kernelVersion();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::productType();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::productVersion();qDebug().noquote() << "[" << __FILE__ << __LINE__ << "]" << QSysInfo::prettyProductName();

输出:

[ ..\untitled44\mainwindow.cpp 14 ] i386
[ ..\untitled44\mainwindow.cpp 15 ] x86_64
[ ..\untitled44\mainwindow.cpp 16 ] i386-little_endian-ilp32
[ ..\untitled44\mainwindow.cpp 18 ] winnt
[ ..\untitled44\mainwindow.cpp 19 ] 10.0.19041
[ ..\untitled44\mainwindow.cpp 20 ] windows
[ ..\untitled44\mainwindow.cpp 21 ] unknown
[ ..\untitled44\mainwindow.cpp 22 ] Windows 
http://www.lryc.cn/news/211371.html

相关文章:

  • Maven配置阿里云中央仓库settings.xml
  • 由浅入深C系列八:如何高效使用和处理Json格式的数据
  • 多媒体应用设计师 第16章 多媒体应用系统的设计和实现示例
  • golang平滑重启库overseer实现原理
  • 用Python定义一个函数,用递归的方式模拟汉诺塔问题
  • 二手的需求
  • 大厂面试题-JVM为什么使用元空间替换了永久代?
  • 基本微信小程序的驾校宝典系统-驾照考试系统
  • 02、SpringCloud -- Redis和Cookie过期时间刷新功能
  • 【报错】kali安装ngrok报错解决办法(zsh: exec format error: ./ngrok)
  • <学习笔记>从零开始自学Python-之-常用库篇(十三)内置小型数据库shelve
  • Redis快速上手篇七(集群-六台虚拟机)
  • LeetCode 301. 删除无效的括号【字符串,回溯或BFS】困难
  • 面试经典159题——Day25
  • C# OpenCvSharp DNN 部署L2CS-Net人脸朝向估计
  • Windows环境下MosQuitto服务器搭建,安装mqtt服务端软件
  • web前端JS基础-----制作进度条
  • Linux命令解压多个tar.gz包
  • Java基于SpringBoot+Vue的网上图书商城管理系统(附源码,教程)
  • Visual Studio Code的下载与安装
  • 23种设计模式在SpringCloud源码里的应用
  • 几个精致的Linux命令
  • CoDeSys系列-3、Windows运行时软PLC主站和p-net从站IO设备组网测试
  • vscode下ssh免密登录linux服务器
  • 基于jquery+html开发的json格式校验工具
  • 【面试经典150 | 栈】最小栈
  • Linux网络基础2 -- 应用层相关
  • 【Python机器学习】零基础掌握SkewedChi2Sampler内核近似特征
  • Unity Meta Quest 一体机开发(三):Oculus Integration 基本原理、概念与结构+玩家角色基本配置
  • excel 拼接字符 单元格