LinuxC中全局变量environ[转]

  • 【原文:】《LinuxC中全局变量environ》 http://t.zoukankan.com/qingergege-p-6495475.html
  • Linux C中environ 变量是一个char** 类型,存储着系统的环境变量。
  • 要想遍历环境变量可以用下面这个程序:
#include <stdio.h>extern char ** environ;int main()
{char ** envir = environ;while(*envir){fprintf(stdout,"%s",*envir);envir++;}return 0;
}
  • 因为environ是一个全局的外部变量,所以切记使用前要用extern关键字进行声明,然后在使用。
  • unistd.h头文件中声明了这个变量,所以也可以将unist.h进行include,这个时候就不用再对environ进行extern声明了(应为unistd.h中已经声明了),代码如下:
#include <stdio.h>
#define __USE_GNU
#include <unistd.h>
//extern char ** environ;
int main()
{char ** envir = environ;while(*envir){fprintf(stdout,"%s",*envir);envir++;}return 0;
}
  • 要注意的问题是,在unistd.h中声明environ的地方使用了条件编译,编译的条件就是#ifdef __USE_GNU,LinuxC中默认没有定义这个宏,所以要在#include <unistd.h>之前加上#define __USE_GNU
  • 还有一种方法遍历环境变量,就是利用main函数的参数,我们常见的main函数带有两个参数int argc 和 char * argv[], 但实际上还有一个带有三个参数的main函数,如下:
int main(int argc, char *argv[], char *env[])
{int index = 0;while(env[index] != NULL){printf("env[%d]: %s", index, env[index]);++index;} return 0;
}

LinuxC中全局变量environ[转]相关推荐

  1. ajax实现给JavaScript中全局变量赋值(转)

    原文地址:ajax实现给JavaScript中全局变量赋值 问题简化: <script type="text/javascript"> var a=1 ; functi ...

  2. PHP中全局变量global和$GLOBALS[]的区别分析

    一.举例比较  例一: <?php  $var1 = 1;  function test(){  unset($GLOBALS['var1']);  }  test();  echo $var1 ...

  3. python中全局变量和局部变量关键字_Python中全局变量和局部变量的理解与区别

    前言 学过编程的人应该对全局变量与局部变量这两个名词并不陌生,Python也同多数编程语言一样,也有全局变量与局部变量的概念 但是与其他编程语言又有所不同 全局变量与局部变量两者的本质区别就是在于作用 ...

  4. php中全局变量global和超全局变量$GLOBALS

    php中全局变量global和超全局变量$GLOBALS 1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require ...

  5. python 局部变量 占内存吗_Python中全局变量和局部变量的理解与区别

    前言 学过编程的人应该对全局变量与局部变量这两个名词并不陌生,Python也同多数编程语言一样,也有全局变量与局部变量的概念 但是与其他编程语言又有所不同 全局变量与局部变量两者的本质区别就是在于作用 ...

  6. C++中全局变量的使用

    在C++中全局变量的定义与使用做一下下面简单的记录,方便日后查阅,也与大家一起学习. 1.全局变量的声明; [1]在头文件.h中进行声明,如果在此文件之外也要使用该变量,则在变量声明前加extern: ...

  7. LinuxC中“库函数”的使用和常用的“输出函数”。

    程序中的函数就是:将一段经常需要使用的代码封装起来,在需要使用时可以直接调用.函数在LinuxC中占有极其重要的地位. 1.库函数的使用 库函数指的是编译器提供的可在源程序中调用的函数.它可以分为两大 ...

  8. python 中全局变量、局部变量、静态变量,实例变量的区别和理解

    python 中全局变量.局部变量.静态变量,实例变量的区别和理解 在python中一个XXX.py 文件可能有多个类所以要严格区分这些变量 全局变量: 在这个模块内也就是在整个.py 文件里,并且在 ...

  9. php的globle超全局变量,php中全局变量global和超全局变量$GLOBALS

    php中全局变量global和超全局变量$GLOBALS 1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require ...

最新文章

  1. Asp.Net构架(Http请求处理流程) - Part.1
  2. STM 软件事务内存——本质是为提高并发,通过事务来管理内存的读写访问以避免锁的使用...
  3. Show percentage use PHP
  4. IT员工应该向谁汇报工作,CFO or CEO?
  5. 初中数学四十二个几何模型_模型 | 一文搞定初中数学9大重要几何模型(优选)...
  6. 查看linux的系统位数
  7. 从0到1搞一波dubbo
  8. php js 图片旋转,使图片旋转的3种解决方案_基础知识
  9. c语言程序如何实现分组,c程序-实现随机分组.ppt
  10. mysql显示nan_Python将dataframe连接到MySQL时出现NaN[mysqlconnector]
  11. div模拟textarea在ios下不兼容的问题解决
  12. pdf增强锐化软件_终于找到这款神器!高级锐化插件 让你的画面更清晰
  13. Maven之POM文件build标签详解
  14. ArcGIS Pro 3.0最新消息
  15. POJO类的提效利器Lombok插件IDEA安装
  16. 基于巴法云平台的天猫精灵控制开关
  17. 苦橙花---不喧哗,自有声
  18. 中国第一台103型电子计算机诞生于,第一台计算机诞生于几年?
  19. JavaScript去除数组重复的元素且都不保留
  20. Exynos_4412——ADC实验

热门文章

  1. Java编程性能调优-01|字符串性能优化不容小觑,百M内存轻松存储几十G数据
  2. 计算机网络class4(时延、时延带宽积、RTT和利用率)
  3. OpenCV之图像对比度、亮度值调整
  4. 【论】易语言锁机过杀
  5. 查看Nginx是否已经安装
  6. 如何查看linux是否安装jdk?
  7. Zipkin安装(Docker)
  8. dubbo+zipkin调用链监控
  9. Android获取view焦点方向,android 中获取当前焦点所在屏幕中的位置 view.getLocationOnScreen(location)...
  10. 使用cmd命令查找指定存储盘文件所在目录