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

做快餐 承包食堂的公司网站制造企业网站的建设目标

做快餐 承包食堂的公司网站,制造企业网站的建设目标,手机网站怎么设置成电脑版的,专业构建网站的公司目录​​​​​​​ 前言 展示效果 实现代码 前言 该代码模拟了shell的实现#xff0c;也就是解析类似于“ls -a -l的命令#xff0c;当我们启动我们自己写的shell的可执行程序时#xff0c;我们输入ls的命令#xff0c;也可以展示出在shell中输入也就是解析类似于“ls -a -l的命令当我们启动我们自己写的shell的可执行程序时我们输入ls的命令也可以展示出在shell中输入ls时同样的效果一下为展示效果 展示效果 当我们在系统的shell下输入ls时会显示  以下代码是我自主模拟实现shell的程序执行ls命令时的情况   是不是很类似呢感兴趣的同学可以看看以下代码自己也模仿模仿哦εεε(~▽)~  实现代码  #include stdio.h #include string.h #include unistd.h//sleep函数//wait函数头文件 #include sys/types.h #include sys/wait.h//exit的函数 #include stdlib.h#define NUM 2024 #define SIZE 100 #define SEP //注意是而不是.因为strtok的参数是char*类型int main() {//0.shell或者软件只要启动了使用者不去终止就始终不能停止因此要一个死循环while (1){//1.打印类似于shell命令行前的 [xkjtxlocathost shell] 的信息printf([xkjtxlocatehost myshell]# );//不要换行否则就不像shell了用fflush去刷新缓冲区避免没有\n而导致的不输出[xkjtxlocatehost myshell]# 的问题我在《制作进度条》的那篇博客讲过fflush(stdout);//2.获取命令行char cmd_line[NUM];//可以定义为全局变量注意每次使用前memset(cmd_line, \0, sizeof cmd_line);if (fgets(cmd_line, SIZE, stdin) NULL)//推荐使用fgets建立对标准输入输出流概念方便以后学习基础IO{continue;//读取失败重新读取}cmd_line[strlen(cmd_line) - 1] \0;//char* fgets(char* str, int size, FILE* stream);//如果输入成功则返回str的起始地址否则为NULL//3.拆分命令行char* g_argv[NUM];g_argv[0] strtok(cmd_line, SEP);//第一次调用第一个参数传参目标字符串后面都传NULLint index 1;//使得ls命令时带上颜色if (strcmp(g_argv[0], ls) 0){g_argv[index] --colorauto;}//使得ll命令也可以执行if (strcmp(g_argv[0], ll) 0){g_argv[0] ls;g_argv[index] -l;g_argv[index] --colorauto;}while(g_argv[index] strtok(NULL, SEP));// printf(index %d\n, index);// //检测分割是否正确// for (index 0; g_argv[index]; index)//C99标准不支持在for循环内定义int// printf(g_argv[%d] %s\n, index, g_argv[index]);//4.TODO//内置命令的处理要父进程去执行的命令如cd命令//目前写法发现cd ~, cd -, rm等命令做不了//错误写法// if (g_argv[0] cd)if (strcmp(g_argv[0], cd) 0){if (g_argv[1] ! NULL)//路径合法{chdir(g_argv[1]);continue;//不去创建子进程}}//5.创建子进程//好处不会影响父进程//shell本来就是媒婆招实习生让实习生干活不影响媒婆pid_t id fork();int status 0;if (id 0)//child{execvp(g_argv[0], g_argv);//选这个函数的原因(1)v用的是数组恰好有数组 (2)每个都要绝对路径这是没有必要的因此可以使用带p的函数exit(1);//进行到这里一定是函数调用失败}//这里一定是父进程//father//获取子进程信息pid_t ret waitpid(-1, status, 0);/*#include sys/types.h#include sys/wait.hpid_t wait(int *status);pid_t waitpid(pid_t pid, int *status, int options);*/if (ret 0) //等待子进程成功{printf(exit code %d\n, WEXITSTATUS(status));//打印子进程退出码}}return 0; }
http://www.hkea.cn/news/14460510/

相关文章:

  • 招投标建设网站的网站做个人网站要注意什么
  • 源码编辑器下载张家港优化网站seo
  • 阳西住房和城乡规划建设局网站建网站 收费标准
  • 网站建设 上传和下载功能今天重大新闻国内最新消息
  • dw设计做网站完整案例网页设计模板图片简约
  • 南通市住房和建设局网站做动漫的游戏 迅雷下载网站
  • 网站建设接单吧郑州网站建设
  • dz网站建设教程wordpress 没有添加主题
  • 昌邑市建设局网站汉阳网站建设哪家便宜
  • 企业网站多少钱一个公司管理系统软件
  • 网站建设如何搞活动公司网站的服务费做哪个科目
  • 互联网建站一个网站开发的意义
  • 网站建设设计哪家好开发一个软件需要多长时间
  • 宁波网站建设服务报价深圳定制工作装
  • 网上申请个人营业执照网站做企业网站需要什么
  • 做外贸网站注意事项wordpress论坛建设
  • 青海企业网站建设开发WordPress文章付费系统
  • 做seo的网站wordpress 模板带数据
  • 网站开发用到的研究方法宸建设计网站
  • .net制作网站开发教程国外十大黄冈推广
  • 做门户网站的系统内江市建设信息网站
  • 工作空窗期怎么缴纳社保网站信息优化的方式
  • 亚马逊做网站推广用哪个平台效果好
  • 济源专业网站建设(制作网站)网站生成静态页面工具
  • 杭州网站开发后端招网络推广网站建设方案
  • 图片上传网站变形的处理网站和服务器是什么关系
  • 宋祖儿在哪个网站做网红用html做的美食网站
  • aspcms中英文双语网站神华科技网站建设
  • 公司网站模板怎么做网上做任务的网站
  • 如何自己做留言板网站献县建设局网站