⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 process.h

📁 这是一个linux下的Shell.有命令历史和命令提示
💻 H
字号:
//the information of process.//not include pipestruct pro_info{	pro_info()	{		init();	};	void init(void)	{		argv = 0;		id   = -1;				//id == -1 processs has't be running. -2 run over. bigger than 0  runnnig.		background = false;		input_filepath = 0;		input_fid = -1;		output_filepath = 0;		output_fid = -1;		output_over_tail = false;	};	~pro_info()	{				if(argv)		{			char** temp = argv;			while(*(argv++))				delete *argv;			delete temp;		}		delete input_filepath;		delete output_filepath;	}	pro_info& operator=(pro_info& x)	{		int num = 0;		char** temp = x.argv;		if(!temp)		{			argv = 0;			input_filepath = 0;			output_filepath = 0;		}		else		{			background = x.background;			while(*(temp++))			{				num++;			}			argv = new char*[num + 1];			argv[num] = 0;			for(int i = 0; i < num;i++)			{				argv[i] = new char[strlen(x.argv[i]) + 1];				strcpy(argv[i], x.argv[i]);			}			if(x.input_filepath)			{				input_filepath = new char[strlen(x.input_filepath) + 1];				strcpy(input_filepath, x.input_filepath);				input_fid = x.input_fid;			}			else				input_filepath = 0;						if(x.output_filepath)			{				output_filepath = new char[strlen(x.output_filepath) + 1];				strcpy(output_filepath, x.output_filepath);				output_fid = x.output_fid;				output_over_tail = x.output_over_tail;			}			else				output_filepath = 0;					}		return x;	}	char**  argv;	int     id;	bool    background;	char*   input_filepath;	int     input_fid;	char*   output_filepath;	int     output_fid;    bool    output_over_tail;};struct process_node{	process_node()	{		pro.init();		next = 0;		pipe_read = pipe_write = -1;		readFlag = false;		writeFlag = false;	};	~process_node()	{	}	pro_info pro;	process_node* next;	int pipe_read;	int pipe_write;	bool readFlag;	bool writeFlag;};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -