现代c++获取linux系统版本号

现代c++获取linux系统版本号

前言


本文介绍一种使用c++获取linux系统版本号的方法.

一、使用命令获取系统版本号

linux系统中可以通过uname -r命令来获取linux系统版本号,如下图所示

shell 复制代码
uname -r

二、使用c++获取系统版本号

需要包含<sys/utsname.h>头文件

接口如下

cpp 复制代码
std::string releaseVersion() {
    struct utsname info;
    if (uname(&info) < 0) {
        return {};
    }

    return info.release;
}

三、验证

main.cpp中写下如下代码

cpp 复制代码
#include <iostream>
#include <string>
#include <sys/utsname.h>

std::string releaseVersion() {
    struct utsname info;
    if (uname(&info) < 0) {
        return {};
    }

    return info.release;
}

int main() {
    std::cout << "发布版本号:" << releaseVersion() << std::endl;
    return 0;
}

编译并执行,g++ main.cpp -o main && ./main,执行结果如下

可以正确的获取当前系统版本号

四、总结

根据上诉的c++代码,确实可以正确的获取到当前系统的版本号,亲测可用!!!

相关推荐
FuckPatience1 天前
Visual Studio C# 项目中文件后缀简介
开发语言·c#
ulias2121 天前
Linux系统中的权限问题
linux·运维·服务器
老四啊laosi1 天前
[C++进阶] 24. 哈希表封装unordered_map && unordered_set
c++·哈希表·封装·unordered_map·unordered_set
mzhan0171 天前
Linux: lock: preempt_count 是一个线程级别的变量
linux·lock
014-code1 天前
订单超时取消与库存回滚的完整实现(延迟任务 + 状态机)
java·开发语言
妙为1 天前
银河麒麟V4下编译Qt5.12.12源码
c++·qt·国产化·osg3.6.5·osgearth3.2·银河麒麟v4
lly2024061 天前
组合模式(Composite Pattern)
开发语言
游乐码1 天前
c#泛型约束
开发语言·c#
Dream of maid1 天前
Linux(下)
linux·运维·服务器
齐鲁大虾1 天前
统信系统UOS常用命令集
linux·运维·服务器