资讯动态

环境变量,本地变量

发布时间:2026/10/20 11:09:33 来源:尧图企业网站定制
1.解决一个问题我们通常执行一个命令的时候或者是我们写好一个程序我们运行的方式好像不太一样普通的cadll这些本质也是在运行命令当我们执行自己写的命令./命令的方式来运行的这是为什么我们直接写我们名字是无法运行的本质这就是环境变量在搞鬼我们在运行命令ll cad这些他是写在userbin这个文件夹里面这个文件夹存在一个PATH上面在这个文件下这里面的文件路径我们直接执行是不需要写路径的默认可以运行但是我们自己写的命令不在这里面所以需要加./这个意思是在这个路径下寻找这里我们有两种方法一种是把我们这个程序放到bin这里面但是这样我们会污染bin所以不建议这样做还有一种是把这个文件的路径加到PATH里面就行了PATH路径这样就是把我们这个路径放到PATH里面但是这样真的可以吗我们发现我们本来的命令为啥无法执行了看一下PATH发现我们原来的命令都没有了所以我们本来的命令是无法执行的这是我们只需要退出xshell在进行登陆就可以恢复具体原因我们后面会说恢复了那么我们应该怎么办呢此时我们再看path发现不仅有我们原来的还有我们呢新加的此时我们运行我们的程序此时是正确的我们就可以使用啦补充win下面也有环境变量2.见一下环境变量演示一下命令env查看所有环境变量具体解释我们之前学过一个命令cd - 可以回到我们刚刚的目录此时系统是怎样找到的呢就是因为有这个系统变量的oldpwd存在我们可以查看我们历史执行的history这个是什么记录的呢就是依靠HISTSIZE哪个1000是最多纪录1000条超出就会删除之前的命令记录新的我们cd ~这个命令是如何找到家目录呢就是通过home这个环境变量来记录的就是寸目前的用户是谁也就是pwd3.环境变量和c/c代码和进程之间的关系a.用代码获取环境变量我们上一章说过了main里面是可以写参数的这个参数最多是三个除了我们上次写的那两个还有一个就是char *env[]这个本质是一个表格表格的最后是一个NULL接下来我们看一下注意如果要写第三个参数前两个不可以少需要占位源代码和输出的结果如图这个本质是把环境变量传给进程除了这种方法还有两种在代码中获取环境变量的方法environ本质是和env差不多这样看和main参数其实也一样getenv是获取指定的其实就是遍历4.为什么我么一关闭程序所有都恢复原装了这关键就是存在一个配置文件我们点击xshell之后会先运行bash这个命令就是看配置文件的我们之前改path再给也不是配置文件说白了就是改了内存所以从新开始之后主要配置文件不改其他的都是白谈5.环境变量本地变量区别本地变量无法继承不具备全局性只在bash里面可以访问如何构造本地变量补充子进程是可以继承父进程的全局变量的此时我们新开一个进程此时这个进程是我们上面进程的子进程此时我们上面写的是无法继承的我们只需要放到环境变量中就行加上关键词expor之后就被作为环境变量都可以运行了我们可以把本地变量和环境变量看作C语言中的局部变量和全局变量

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑