通常专门的编程语言需要特定的编译器甚至runtime,而批处理的编译器和运行时就是windows提供的cmd,省去了很多前者必要的条件,它甚至可以直接调用系统例程,比如shutdown,而这是在简单的编程语言里(如TC2)很难做到的,所以DOS有即写即运行的优势。写好的批处理也可以用bat2com、com2exe等程序编译成机器码,方便保护思路。
命令行可以代替图形操作简单精确地完成事务性的操作,甚至处理一些简单的数值计算问题,比如经典的“汉诺塔”问题就可以仅在桌面用批处理求解而不必借助专门的语言。这一优点对在外临时遇到需要机算的问题时特别有意义。
我想跟大家讨论一下DOS在编程上的能力到底有多强
我觉得编程语言应具备的要素:
1、变量 ----- DOS里可用 set 和 %c ,是否只能表示整数和字符串?...复杂数据结构 ---------数组、结构体。。。应该是没有吧
2、数学运算 -------- + - * / 逻辑 、移位
3、模块化 --------- 类似函数或过程的功能可用 goto实现,还算方便
4、库 ----- 这个太爽了!批处理的库就是所有DOS内外命令加path里那些,尤其是system32里 的,比高级语言调用系统例程方便得多
5、分支控制 --------- 是否只有 IF 、FOR这两个可用?
6、输入输出 ------ 我只知道命令行参数、choice、重定向、管道这3种,不知道还有没有别的比如输出到打印机或内存的
7、图形接口 -------- 不知道绘图功能、winform调用能不能在Dos里做到,我发现XP cmd里的tree命令很有趣,有点图形的意思
8、低级操作 ----- debug ,这个很强!不过在.bat里用得少,求资料ing
大概就想到这么多,请各位老师指正、补充
谢谢
致敬