当前位置: 首页 > news >正文

企业简介 网站建设百度推广中心

企业简介 网站建设,百度推广中心,wordpress模板商业,做一个英文的公司网站多少钱🎁个人主页:我们的五年 🔍系列专栏:Linux课程学习 🌷追光的人,终会万丈光芒 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 命令行参数: 用命令行参数实现不同…

🎁个人主页:我们的五年

🔍系列专栏:Linux课程学习 

🌷追光的人,终会万丈光芒

🎉欢迎大家点赞👍评论📝收藏⭐文章

 

目录

命令行参数:

用命令行参数实现不同功能的程序:

main函数的参数是谁传递的?

mian函数被其他的函数调用:

环境变量:

查看环境变量:

为什么指令可以不带路径就能运行?

让我们自己的程序也可以不带路径运行:

环境变量的配置文件:

用户的配置文件


1.变量定义在for循环中,在c99和c++中才支持:

gcc $^ -o $@  -std=c99

2.命令行也是一个进程,它的父进程都是shell。

3.对于父子进程,对于父进程只读的数据,不会修改的数据,不会拷贝一份,但是子进程可以看到。

4.编译器,加载器,操作系统表示互相割裂的,彼此有联系。

5.env和argv都是以NULL结尾,env没有个数,可以通过这样的方法进行打印env。

6.echo进行打印时,如果不加$表示的是字符串,加$才表示变量。

7.PATH=……:这样进行修改环境变量PATH是覆盖式的修改。

8.我们进行的环境变量的修改,只是改了内存级的环境变量,进程中的环境变量。当我们退出以后,环境变量重新被加载,这样就没有了我们之前修改的环境变量。环境变量在系统的配置文件中。文件时磁盘级存储的。

9.打开shell---》启动一个进程---》读取系统用户的环境变量》在内存中就会保存这些环境变量

10.source 文件:让配置文件生效。

命令行参数:

int main(int argc,char* argv[ ])

argc表示参数的个数,crgv[]表示参数清单,是一个一个的字符串。

根据下面的测试结果,我们知道argv是我们在命令行输入的命令,所以argv[1]是./code ,后面的根据输入的命令而定。

#include <stdio.h>int main(int argc,char* argv[])
{printf("argc:%d\n",argc);for(int i=0;i<argc;i++){printf("agrv[%d]:%s\n",i,argv[i]);}return 0;
}

用命令行参数实现不同功能的程序:

有了命令参数,让一个程序可以实现不同的功能。

比如:命令中的选项的实现

#include <stdio.h>    
#include <string.h>    int main(int argc,char* argv[])    
{    if(argc<2)    {    printf("未传参数,opt1,opt2,opt3\n");    }    else if(argc>2)    {    printf("参数过多,pt1,opt2,opt3\n");    }    else if(strcmp(argv[1],"opt1")==0)    {    printf("l love xy!\n");    }    else if(strcmp(argv[1],"opt2")==0)    {    printf("l love xy!,Future home will have bathtubs!\n");    }    else if(strcmp(argv[1],"opt3")==0)    {    printf("l love you,Future home will have bathtubs!l promise!\n");                                                                                                                                          }    else    {    printf("参数错误\n");    }    return 0;    
}    

main函数的参数是谁传递的?

1.首先被shell(命令行解释器)拿到。然后shell根据空格,就形成了一张表(argv),也就可以知道元素个数(argc)。这张表中每一个都指向一个字符串,最后以NULL结尾。

2.命令执行的时候,给进程传递,命令行参数。此时就形成了全局的argc和argv[ ],命令行参数是不会发生变化的,这样子进程不用拷贝一份,argc和argv[ ]不会进行修改,只需要只读就行。但是子进程也可以看到。

mian函数被其他的函数调用:

根据参数的不同,就调不同的mian函数。


环境变量:

mian函数中的env:环境变量。

mian中的argv和env都是一张表结构。

查看env,因为argv和env都是以NULL结尾的,所以我们可以以env[i]进行判断真假进行打印所以的env。

for(int i=0;env[i];i++)
{printf("env[%d]:%s\n",i,env[i]);
}  

查看环境变量:

1.环境变量是指操作系统中用来指定操作系统运行环境的一些参数。

2.启动的任何一个进程,都会传递这些参数。所以我们才能写一个程序,通过env打印环境变量。

3..环境变量一般用于特殊用途,一般具有全局属性

4.比如我们从来不知道我们要链接的动态库在哪里,还是可以链接成功。这是环境变量帮助编译器进行查找

环境的变量的基本格式:key=value,全局变量。

全部都是什么=什么

HISTSIZE:表示命令保存条数。

PATH:告诉shell,应该去哪个路进行查找指令。

PWD:当前用户所在目录。

为什么指令可以不带路径就能运行?

PATH环境变量告诉了shell,应该要去哪个路径下查找。

echo $PATH:打印PATH环境变量。

有很多的路径,以:作为分隔符。

我们自己的程序要带./才能找到我们要执行的程序。

而系统就能知道指令在/user/bin路劲下。

PATH环境变量:系统可执行文件的搜索路径集合。

我们进行的环境变量的修改,只是改了内存级的环境变量,进程中的环境变量。当我们退出以后,环境变量重新被加载,这样就没有了我们之前修改的环境变量。


让我们自己的程序也可以不带路径运行:

PATH=……:PATH覆盖式的修改环境变量PATH。

方法一:

可以把我们的程序拷贝到PATH中的任何一个目录下。

方法二:

在PATH中加入我们的可执行程序的目录。可以先pwd查看,然后echo $PATH查看PATH,最后把两个进行拼接,就可以了。

也可以直接$PATH,加上分隔符:,最后加上我们的路径。

如果我们在配置文件中修改PATH,那么每次启动shell的时候,我们新增的PATH被加载。

环境变量的配置文件:

此时在用户下的两个环境变量:都是隐藏文件,以.开头

.bashrc

.bash_profile

用户的配置文件

用户的配置文件,在启动shell的时候,也是要被加载的。

它也是以$PATH的方式进行增加新的PATH环境变量。

让配置文件生效:
source 文件

http://www.ritt.cn/news/18679.html

相关文章:

  • 自己做的网站地址手机怎么打不开seo推广优化多少钱
  • 网站建设扁平化网站建设公司大全
  • 四川专做餐饮的网站东莞互联网推广
  • 网站的付款链接怎么做的百度竞价有点击无转化
  • 网站名称搜索不到泉州关键词排名工具
  • 像优酷平台网站是怎么做的最新网站查询工具
  • 做百度网站每年的费用多少钱南宁seo专员
  • 如何免费建站企业网站建设方案
  • 网站设计的总结网页设计大作业
  • 网站内页收录高级seo培训
  • 政府网站群建设关键词在线查询
  • 增加网站访客排名查询
  • 官方网站建设要点seo优化评论
  • 可以免费做简历的网站南京关键词优化服务
  • 合肥做公司网站公司seowhy官网
  • 模板网站与定制网站的价格推广软文案例
  • 模版网站和语言网站网站seo优化外包顾问
  • 怎样建设一个英语网站如何网上销售自己的产品
  • 山西天镇建站哪家好技术培训学校机构
  • 门窗企业网站建设青岛seo百科
  • 公司关于网站设计公司的简介武汉大学人民医院怎么样
  • 懂得做网站还可以做什么兼职百度百家号注册
  • 做高档衣服的网站站长工具下载app
  • 武汉网站建设晨语百度怎么注册自己的店铺
  • 溧阳做网站哪家好哈尔滨最新今日头条新闻
  • 河北提供网站制作公司电话免费的网页设计成品下载
  • 国外优秀画册设计网站最近发生的热点新闻
  • 做网站卖狗挣钱吗安徽网络seo
  • 男男做暧暧视频网站网站建设情况
  • 建建建设网站品牌策划书案例