#include <stdio.h>
#include <sys/utsname.h>  //unameint main(int argc, char **argv[])
{struct utsname  u;if (uname(&u) != -1) {printf("获取当前内核的名称和信息例如以下\n""sysname:%s\n""nodename:%s\n""release:%s\n""version:%s\n""machine:%s\n", u.sysname, u.nodename, u.release, u.version, u.machine);}return 0;
}

输出例如以下:

获取当前内核的名称和信息例如以下
sysname:Linux
nodename:fes
release:2.6.32-220.el6.x86_64
version:#1 SMP Wed Nov 9 08:03:13 EST 2011
machine:x86_64

size_t confstr(int name, char *buf, size_t len);
confstr函数获取依赖配置的字符串变量的值
1、_CS_GNU_LIBC_VERSION,the GNU C library version on this system
2、_CS_GNU_LIBPTHREAD_VERSION,the POSIX implementation supplied by this C library
3、_CS_PATH,A value for the PATH variable which indicates where all the POSIX.2 standard utilities can be found.

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>       //confstrint main(int argc, char **argv[])
{char *pathbuf, *gun_libpthread_version_buf, *gun_libc_version_buf;size_t n;n = confstr(_CS_PATH,NULL,(size_t) 0);pathbuf = malloc(n);if (pathbuf == NULL)abort();confstr(_CS_PATH, pathbuf, n);printf("_CS_PATH, A value for the PATH variable:%s\n", pathbuf);free(pathbuf);pathbuf = NULL;n = confstr(_CS_GNU_LIBPTHREAD_VERSION,NULL,(size_t) 0);if (n > 0) {gun_libpthread_version_buf = malloc(n);}if (gun_libpthread_version_buf == NULL)abort();confstr(_CS_GNU_LIBPTHREAD_VERSION, gun_libpthread_version_buf, n);printf("_CS_GNU_LIBPTHREAD_VERSION, the POSIX implementation supplied by this C library:%s\n", gun_libpthread_version_buf);free(gun_libpthread_version_buf);gun_libpthread_version_buf = NULL;n = confstr(_CS_GNU_LIBC_VERSION,NULL,(size_t) 0);if (n > 0) {gun_libc_version_buf = malloc(n);}if (gun_libc_version_buf == NULL)abort();confstr(_CS_GNU_LIBC_VERSION, gun_libc_version_buf, n);printf("_CS_GNU_LIBC_VERSION, the GNU C library version on this system: %s\n" \, gun_libc_version_buf);free(gun_libc_version_buf);gun_libc_version_buf = NULL;return 0;
}

输出结果例如以下:

_CS_PATH, A value for the PATH variable:/bin:/usr/bin
_CS_GNU_LIBPTHREAD_VERSION, the POSIX implementation supplied by this C library:NPTL 2.12
_CS_GNU_LIBC_VERSION, the GNU C library version on this system: glibc 2.12

linux下confstr与uname函数_获取C库与内核信息相关推荐

  1. linux uname内核,Linux下confstr与uname函数_获取C库与内核信息

    Linux下confstr与uname函数_获取C库与内核信息 #include #include  //uname int main(int argc, char **argv[]) { struc ...

  2. Linux 下调用UEFI的函数

    Linux 下调用UEFI的函数 摘要 Linux 调用UEFI function 时候调用约定的转换 64bits calling convention Microsoft calling conv ...

  3. Linux下的内存对齐函数

    在Linux下内存对齐的函数包括posix_memalign, aligned_alloc, memalign, valloc, pvalloc,其各个函数的声明如下: int posix_memal ...

  4. Linux系统常用函数,浅谈linux下的一些常用函数的总结(必看篇)

    1.exit()函数 exit(int n)  其实就是直接退出程序, 因为默认的标准程序入口为int main(int argc, char** argv),返回值是int型的. 一般在shell下 ...

  5. Linux系统怎么编译sin,linux下gcc编译sin函数出错的问题

    linux下gcc编译sin函数出错的问题 收藏 Q: I keep getting errors due to library functions being undefined, but I'm ...

  6. linux下C语言main函数参数解析

    1. linux下常见的main函数有两种形式: int main(int argc, char **argv) int main(int argc, char * argv[]) 2. 参数介绍 第 ...

  7. Linux 下谨慎使用 rm,避免从删库到跑路的悲剧发生

    我们该如何再次避免删库"跑路"等事件的再次发生? 对此,在企业首先做好权限管理以及多重审核机制的同时,CSDN 也曾教诸多程序员们如何在 Linux 下谨慎使用 rm,避免从删库到 ...

  8. linux下的常用时间函数总结

    1.Unix系统一直使用两种不同的时间值:"日历时间"和"进程时间" 1.1.日历时间,日历时间是从国际标准时间公元1970年1月1日00:00:00到现在所经 ...

  9. linux下c语言http服务器_服务器端开发经验总结 Linux C语言

    简介 在进行服务器端开发的时候需要考虑一些算法和性能问题,经过了几年的开发,对这方面有了一些经验,现在写下来跟大家分享和讨论. 我主要是在Linux下进行C语言的开发,所以后面的实现都是基于Linux ...

最新文章

  1. SAP零售商品类别层次:为什么(业务视角)?
  2. 使用SQLServer 2008的CDC功能实现数据变更捕获
  3. Python之中文识别
  4. 计算机应用系统的开发活动,计算机应用教学训练系统的开发与应用.doc
  5. 关于对接保税仓物流系统或支付系统推送报关单的一些琐碎的问题
  6. oracle 子表数据变化时主表也会更新_亿信ABI版本重大更新,新增60余个实用新功能,还有一项黑科技...
  7. Spring开发环境搭建和第一个示例程序
  8. 深拷贝与浅拷贝、值语义与引用语义对象语义 ——以C++和Python为例
  9. 在DataGrid中选择,确认,删除多行复选框列表
  10. php 反射 调用私有方法,PHP通过反射方法调用执行类中的私有方法
  11. 使用函数求余弦函数的近似值_WPS-Excel表格实用技巧-排名函数RANK函数的使用
  12. 【数据结构】线性表之数组---C++语言描述
  13. 关于卸载流氓软件,自己试错的一些结论
  14. 银行账户管理系统GUI
  15. 千万千万不要和女程序员做同事!否则你会......爱上她
  16. 知乎,挣钱?果然具有长尾效应
  17. 中国AI独角兽新增一员:这家公司获得10亿元C轮融资 估值达到12亿美金
  18. 自然数、实数、整数、有理数的符号表示
  19. 音视频直播流程及常见视频流协议介绍
  20. 调用第三方应用App

热门文章

  1. 1、操作系统基础概念
  2. Esper系列(十二)Variables and Constants
  3. Bootstrap Metronic 学习记录(一)简介
  4. 读excel图片到数据库和上传图片到数据库
  5. 【Windows 逆向】CheatEngine 工具 ( CheatEngine 简介 | 使用 Lazarus 编译 CE 源码 | CheatEngine 相关文档资料 )
  6. 【Android 文件管理】分区存储 ( MediaStore 文件操作 )
  7. 【鸿蒙 HarmonyOS】界面跳转 ( AbilitySlice 之间的界面跳转 | AbilitySlice 之间的值传递 )
  8. 【Android 系统开发】Android框架 与 源码结构
  9. DonkeyID---php扩展-64位自增ID生成器
  10. web项目_学生证管理系统