dos下命令的分屏显示功能是怎么做的?

来源:百度知道 编辑:UC知道 时间:2024/09/24 14:26:55
比如DIR就显示很多
而DIR /P 就只显示第一页
按任意键可显示下页,直到全部显示完
我说的是怎么用程序实现的

二楼说的
system("pause")是什么意思?
能详细描述一下吗?

看你能给哪种程序了
我现在在C++版问
最好当然是C++程序
我现在是要把文本通过套接字发到TELNET终端上显示
显示时太长的文本要分屏幕

命令行参数通过main()参数传入程序

void main(int argc, char *argv[]){ }

argc -- 参数个数,包括程序名
argv[0] 字符串,程序名
argv[1] 位置参数1
argv[2] 位置参数2

DIR /P -- argc=2; argv[0]="DIR"; argv[1]="/P";
DIR -- argc=1; argv[0]="DIR";

程序查DOS窗大小--知道窗宽几个格,窗高多少行
if (strcmp(argv[1],"/P") == 0) { 分页... };

根据要显示的内容,行数,每次输出行数等于 窗高行数
用 % 运算 (整除) 条件 等于0,判断暂停,等待任意键继续

if (argc==1){不分页};

stdlib.h中声明的system()函数用于向操作系统发送一条SHELL指令(DOS命令)

这里的system("pause")是向系统发送一条pause命令,作用是使屏幕暂停并输出一条提示信息提示用户按任意键继续。

首先设定一个计数器 number
if((number%i)==0)
{
system("pause");
}
i是你自己设定的参数 例如10,20

把命令交给more命令就可以了(好像叫作管道还是什麽的操作,在两个命令的中间加一道竖线,意思是把前一个命令的输出当作后一个命令的输入),例如:
dir|more

bat文件里直接pause就ok拉。
"我说的是怎么用程序实现的"程序,那多了去了,你要哪种的?c?shell?delphi?java?

按“Enter”,也就是我们所说的“确认”键。
如果要停下来的话,就按“ctrl+c”就OK了。