具体实现思路应该有两种
A.用system函数调dos命令来实现,这其实是取巧了。
B.完全自己真正写个命令解释程序。这可以分成三步来实现
第一步
要自己设计一个内部命令表,按你的要求,采用模块化的方法,这个表就用结构体来做
struct cmd_table{
char * cmd_name //内部命令名字符串
void ( * cmd_func) (void) //指向对应于内部命令函数的指针
}
commands [ ] = {
" DIR" ,dir ,
" COP" ,cop ,
" ERA" ,era ,
" DIS" ,dis ,
"END",end,
}
//要达到真正的面向对象模块化编程, 可以再定义个维数宏,来让搜索内部命令表时能确切
知道内部命令表中内部命令的数目。
# define dim ( x)(sizeof(x)/sizeof (x [0]))
第二步
获取键盘命令
void get cmdln (char * cmd_buffer)
{
show_prompt() /*显示命令提示符*/
get_cmd (cmd_b uffer) /*获取键盘命令行并进行大小写*/
take_para (cmd_buffer) /*分离出命令名及参数*/
}
呵呵,抱歉,我要赶飞机去了,下面的我以后在写。。。。。
预祝国庆节快乐!!!!
1cmd就相当于终端
2
是的
3
ps
4
还是在终端里实现,linux的终端完全可以取代图形界面的鼠标 *** 作
而windows不可以完全取代
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)