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

南昌网站建设培训学校网站集约化建设工作总结

南昌网站建设培训学校,网站集约化建设工作总结,如何批量建站,淘宝客cms网站模板下载地址1.命令行 前⾯写C语⾔时#xff0c;很少关注过 main 函数的参数#xff0c;也没有考虑过 main 为什么会有参 数。 实际上在C语⾔中#xff0c; main 函数⼀共有三个参数#xff0c;在命令⾏部分先关注前两个参数#xff1a; 1. argc#xff1a;表示 main 函数接收到参…1.命令行 前⾯写C语⾔时很少关注过 main 函数的参数也没有考虑过 main 为什么会有参 数。 实际上在C语⾔中 main 函数⼀共有三个参数在命令⾏部分先关注前两个参数 1. argc表示 main 函数接收到参数个数 2. argv表示 main 函数接收的参数 根据下⾯的代码观察这两个参数具体的效果 #include stdio.hint main(int argc, char* argv[]) {printf(%d\n, argc);for(int i 0; i argc; i) {printf(%s\n, argv[i]);} } 对应的 Makefile 如下 TARGETtest SRCtest.c$(TARGET):$(SRC)gcc $^ -o $ -stdc99.PHONY:clean clean:rm -f $(TARGET) 直接运⾏程序可以看到下⾯的结果 如果在输入./test后再输入一些字符串可以看到下面的结果 可以看到 argc 的值即为终端上包括 ./test 在内的所有字符串的个数⽽ ⼀个字符串数组存储着终端上包括 argv 是 ./test 在内的以空格间隔的字符串这个数组 的最后⼀个元素就是 NULL 。这就是 main 函数的两个参数。 前⾯提到Linux下的命令都是⽂件并且因为Linux是C语⾔编写的所以所有命令 所带有的选项即为存储在 argv 数组中的字符串⽽根据不同的参数值实现不同的功 能就可以通过类似于下⾯的形式完成 #include stdio.h #include string.hint main(int argc, char* argv[]) {if(argc 1) {printf(默认功能\n);} else if(strcmp(argv[1], -f1)0) {printf(功能1\n);}return 0; } 2.简单介绍命令如何传递 在Linux下输⼊的命令⾸先会被Shell拿到。 前⾯提到⽗进程和⼦进程的代码是共有的但是⼆者数据是各⾃独⽴的但是数据独 ⽴实际上只会建⽴在其中⼀个进程修改了数据如果⼆者都是对变量进⾏只读不写 那么也没有必要单独为两个进程开辟两个数据空间 对于上⾯的情况亦是如此直接在终端上执⾏的进程其⽗进程都是Shell并且⽗ 进程和⼦进程都只是以只读的⽅式访问 main 函数的参数所以就不会出现两个数据 空间。 从上⾯的过程中也可以看出在设计操作系统、编程语⾔等时相互都是存在依赖关系的 3.环境变量 前⾯提到 main 函数参数实际上有三个⽽这第三个参数就是所谓的环境变量 env 与argv⼀样 env 是⼀个字符串数组 使⽤下⾯的代码可以看到其中的内容 #include stdio.hint main(int argc, char* argv[], char* env[]) {for(int i 0; env[i]; i) {printf(%s\n, env[i]);}return 0; } 需要注意的是因为 argc 只能表示 argv 中的参数个数所以对于循环终⽌条件来 说因为env的最后⼀个位置时 NULL 所以读取到 NULL 即可停⽌ 运⾏上⾯的代码可以看到结果是⼀堆字符串这些字符串就是所谓的环境变量 在Linux中环境变量和对应的值都是键值对的形式⼀共有三种⽅式查看系统中的 环境变量 1. 程序中遍历 env 数组 2. env指令 3. 使⽤ environ 指针访问 environ 本质是⼀个⼆级指针其指向的是每⼀个环境变量的地址所以通过下⾯ 的代码也可以访问到所有的环境变量 #include stdio.h #include unistd.h// 引入外部变量 extern char** environ;int main() {for(int i 0; environ[i]; i) {printf(%s\n, environ[i]);}return 0; } 4.环境变量PATH PATH指定了命令默认搜索的位置因为其值中默认是/ /bin所以命令执⾏是 会默认去/bin⽬录下找所以前⾯将⾃⼰写的程序移动到/bin路径下就可以运⾏ 是因为默认从/bin路径下搜索 可以使⽤echo $PATH查看当前⽤户的PATH环境变量的值 也可以使⽤echo ${PATH}此处的{}表示限定变量的边界 如果需要修改PATH值可以使⽤PATH指定的路径但是这种⽅式只是修改了位于 内存的系统进程中对应的PATH⽽不会影响到本地配置⽂件中的PATH并且这种 ⽅式会覆盖当前系统进程中的PATH值。 通过上述⽅式修改只需要退出当前⽤户再重新登陆即可重新加载对应的配置⽂ 件中的PATH 如果需要修改PATH对应的配置⽂件可以到⽤户的家⽬录下找到.bash_profile ⽂件修改其中的PATH值为需要的值即可 5.环境变量HOME 在Linux中HOME环境变量指定了每⼀个⽤户的家⽬录对于root⽤户来说其值 即为/root对于普通⽤户该值即为/home/⽤户名 使用  echo $HOME  来查看 在⽤户登录时⾸先bash会从配置⽂件中加载对应的值到HOME中此时bash进程 中的cwd就是家⽬录因为HOME的值为当前⽤户的家⽬录⽽因为⼤部分运⾏在 bash进程之上的指令都是bash进程的⼦进程⼦进程会与⽗进程共⽤⼀块数据 所以⼦进程的cwd与⽗进程的cwd相同。所以如果直接在家⽬录运⾏⼀个普通的程 } 14 序时查看其 cwd 值可以看到结果与⽗进程相同例如下⾯的结果 需要注意并不是所有的命令都是 bash 进程的⼦进程例如 cd 命令 cd 命令并不是⼀个单独的进程⽽是⼀个内建built-in命令。所以如果使⽤ cd 改变当前 bash 的⼯作路径 cd 指令通过 chdir 函数对 bash 进程中的数据直接 进⾏修改从⽽达到直接改变 bash 进程的 cwd 例如下⾯的效果 为了更加直观得看到当前 bash 进程的PID 可以使⽤ echo $$命令其中的$$ 就代表当前 bash 的 PID 6.环境变量PWD 在Linux中 PWD 中的值为当前⽤户所处的⼯作路径所以使⽤pwd 命令查看当前的⼯作路径实际上就是在读取 PWD 中的值 PWD ⼀般⽤于进程在当前⼯作路径下创建⼀个⽂件在标准库中提供了⼀个函数为 getenv 原型如下 char *getenv(const char *name); // 参数传递环境变量名返回环境变量值 只要获取到了当前路径就可以在当前路径下创建⽂件 如果需要在程序中创建或修改⼀个环境变量可以使⽤ putenv 函数原型如下 int putenv(char *string);// 参数传递一个键值对如果指定的环境变量已经存在就实现修改否则就是新增 对应的还有⼀个 OLDPWD 环境变量该环境变量的值为上⼀次的⼯作路径这也就是 为什么使⽤ cd -可以切换为上⼀次⼯作路径的原因 7.环境变量 SHELL 在Linux中 SHELL 表示当前使⽤的终端 8.理解环境变量 环境变量本质是系统提供的具有全局属性的变量既然是全局属性则证明所有进程 都可以访问到环境变量这个过程实际上就是通过进程之间的⽗⼦关系实现的因为 环境变量本质是被 bash 进程从配置⽂件加载的所以 bash 进程和其⼦进程就都可 以看到环境变量。在⼤部分情况下环境变量是不会被修改的所以 程实际上是共⽤⼀块环境变量空间 前⾯提到有⼀些指令时内建指令另⼀部分是外部命令常⻅的内建命令还有 echo 和ex port 在Linux中 bash 是 shell 脚本语⾔的⼀种实现⽽ shell 是⼀个命令⾏解释器 ⽤户通过它与操作系统进⾏交互它可以运⾏命令、脚本和程序所以可以在命令⾏ 直接创建⼀个变量这种变量也被称为本地变量例如 本地变量与环境变量基本⼀致只是本地变量不具有全局属性即⽗⼦进程不会共享 使⽤set可以查看当前创建的本地变量和环境变量如果想要清除指定的本地变量可以使⽤unset 本地变量名 本地变量也可以使⽤ echo 命令输出 如果需要将本地变量添加到环境变量可以使⽤ export 命令例如 也可以直接将变量的初始化结合 export 使⽤
http://www.dnsts.com.cn/news/9397.html

相关文章:

  • 带icp备案的网站男生怎么找的小资源
  • 色彩设计网站科技项目申报
  • 网站优化建设工作总结范文网站建设推广优化岗位说明书
  • 甘肃再就业建设集团网站高端网站报价
  • ftp 网站管理塘下做网站
  • 网站建设怎么分析市场成都十大骗子公司
  • 有没有什么 网站能够做试卷犀牛云网站建设费用
  • 辽宁省建设厅官方网站职称评定安徽软件开发公司
  • 通常做网站要多久高端自适应网站设计
  • 服装网站设计方案上海网络公司查询
  • 文登区城乡建设和规划局网站网页游戏大全4399
  • 自己做网站 需要哪些阜阳做网站的网络公司
  • 做网站数据需求分析好的优化网站推广公司
  • 美食网站主页怎么做软件开发外包交易平台
  • 工程建设网站怎么提交wordpress在线视频插件
  • 网站建设个人职责网站更换域名seo
  • 鹿邑网站设计公司软件开发模型是什么
  • 上海网站建设市场分析简单个人网页制作
  • 阿里云虚拟主机网站吗响应式网站建设准备
  • 上海哪个网站最好用企业网站做的好
  • 山西做网站如何选择施工企业科技创新规划
  • 公司建网站空间桂林东西巷介绍
  • wordpress搭建多少钱wordpress分类seo标题
  • 宜春企业网站的建设网站建设开发公司地址
  • 九江网站排名网站建设运营部部长岗位职责
  • 相城建设监理有限公司网站vs2015做网站的后端
  • wordpress vr网站学院路网站建设
  • 开发电商网站多少钱页游网站建设
  • 公明网站建设wordpress保存远程图片
  • 昆明中小企业网站建设小广告图片