【Linux】环境变量炒鸡好理解的博客

基本概念

我们在编写 C/C++ 代码的时候,在链接的时候,从来不知道我们所链接的动态静态库在哪里,但是照样可以链接成功,生成可执行的程序,原因就是有相关环境变量帮助编译器进行查找。

环境变量一把是指在操作系统中用来指定操作系统运行环境的一些参数,环境变量通常是具有某些用途,还有在系统中通常具有全局特性;

常见环境变量

PATH:指定命令的搜索路径;

HOME:指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录);

SHELL:当前Shell,它的值通常时/bin/bash;

查看环境变量的方法

echo $NAME    //NAME:环境变量名称

环境变量相关命令

env     //显示所有环境变量

echo $PATH     //打印PATH变量的内容

set     //显示本地定义的shell 变量和环境变量

export     //设置 / 声明环境变量

unset      //删除环境变量

环境变量的组织方式

            

每个程序都会收到一张环境表,环境表是一个字符指针数组,每个指针指向一个以 ’/0‘ 结尾的环境字符;

通过代码获取环境变量

1、命令行的第三个参数

#include<stdio.h>

int main(int argc,char* argv[],char* env[]){
    int i = 0;
    for(;env[i];i++){
        printf("%s\n",env[i]);
    }
    return 0;
}

2、通过第三方变量 environ 获取

#include<stdio.h>

int main(int argc,char* argv[]){
    extern char** environ;
    int i = 0;
    for(;enciron[i];++i){
        printf("%s\n",environ[i]);
    }
    return 0;
}

libc 中定义的全局变量 envrion 指向环境变量表,environ 没有包含在任何的头文件中,所以在使用的时候要用 extern 声明;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_ClivenZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值