博文
[置顶] 常用DOS命令参数的中文详解 (2006-02-19 18:31:00)
摘要:常用DOS命令参数的中文详解
dir [D:][PATH][NAME][[/A][:attrib]][/o:[sorted][/s][/b][/l][/c[h]
(1)dir /a:attrib 缺省包含所有文件(系统文件.隐含文件)
attrib[:][h/-h]只显示隐含文件或非隐含文件.
[r/-r]只显示只读文件或非只读文件
[s/-s]只显示系统文件或非系统文件
[a/-a]只显示要归档文件或非归档文件
(2)/o[:]sorted:缺省完全按字母顺序,子目录显示在文件之前
/o[n/-n]:按字母顺序或按文件名顺序/反向显示
[e/-e]:按扩展名字母顺序/反向显示
[d/-d]:按时间顺序/反向显示
[s/-s]:按大小从大到小或/反向显示
[g/-g]:按子目录先于文件或文件先于子目录
(3)/s 参数:对当前目录及其子目录中所有文件进行列表
列名:Dir /s/a/o:n c:\>PRN
将c盘上的所有子目录和文件按隶属关系并根据子目录和文件字母顺序打印输出
(4)/B 参数:将只显示文件名与扩展名
(5)/L 参数:将全部用小写字母对文件或子目录进行列表
训练:
dir /a 列当前目录所有文件(含隐含及系统文件)
dir /ah 列隐含文件(包含子目录(隐含的) dir /a-h
dir /as 列系统文件 dir /a-s
dir /ad 列子目录 dir /a-d
dir /o 按字母顺序
dir /B 只显示文件名与扩展名
二、attrib [+r|-r] [+a|-a] [+s|-s] [+h|-h] [d: ] [name] [/s]
缺省 attrib name 显示文件的(文件)属性
attrib io.sys (或子目录)
shr c:\ io.sys 指定为系统(s) 隐含(h) 只读(r)文件
也可以attrib *.sys 显示扩展名为sys的文件属性
参数 [+r|-r] 将文件属性设置或解除 只读属性
[+a|-a] 将文件属性设置或解除 归档属性
[+h|-h] 将文件属性设置或解除 隐含属性 (尤其对子目录也起作用)
/s 参数 将当前及当前子目录下的所有文件......
用VB编程检测笔记本电脑电量(2006-07-28 15:38:00)
摘要:你想知道你的机器当前电池使用情况吗?系统电池如电压不足将导致系统时间变慢等后果。所以你应该知道电池现在的状态,如电压不足则应该尽快去更换电池。用系统测试软件可以办到,但如果你没有也没关系,我们可以用VB编程来帮我们找到答案,具体做法如下:
首先,新建一个工程,在其FORM1上新建二个COMMAND命令按钮(如COMMAND1和COMMAND2),再放上二个LABEL控件(如LABEL1和LABEL2),再装载一个WINDOWS SYSINFO CONTROL 5.0(请从工程菜单下部件对话框中选择并装载),其NAME为SYSINFO1,其他都不变,然后输入以下代码程序:
Option Explicit ′要求声明所有变量
-------------
Private Sub Form_Load() ′做初始化设置
Form1.Caption = ″检测电池状态演示程序″
Command1.Caption = ″检测电池″
Command2.Caption = ″退出″
Label1.Caption = ″″
Label1.AutoSize = True
End Sub
-------------
Private Sub Command1_Click() ′检测当前电池状态
Select Case SysInfo1.BatteryStatus
Case 1: Label1.Caption = ″当前电池状态 :电池电压足″
Case 2: Label1.Caption = ″当前电池状态 :电池电压不足″
Case 4: Label1.Caption = ″当前电池状态 :电池快用完了″
Case 128: Label1.Caption = ″当前电池状态 :无电池″
Case 255: Label1.Caption = ″当前电池状态 :不知名″
End Select
End Sub
-------------
Private Sub Command2_Click()
......
DOS命令案例(2006-05-09 17:57:00)
摘要:
DOS和Windows最大的不同在于DOS命令方式操作,所以使用者需要记住大量命令及其格式使用方法,
DOS命令分为内部命令和外部命令,内部命令是随每次启动的COMMAND.COM装入并常驻内存,而外部
命令是一条单独的可执行文件。在操作时要记住的是,内部命令在任何时候都可以使用,而外部命
令需要保证命令文件在当前的目录中,或在Autoexec.bat文件已经被加载了路径。
常用的内部命令
DOS的内部命令是DOS操作的基础,下面就来介绍一些常用的DOS内部命令。
1、DIR
含义:显示指定路径上所有文件或目录的信息
格式:DIR [盘符:][路径][文件名] [参数]
参数:
/W:宽屏显示,一排显示5个文件名,而不会显示修改时间,文件大小等信息;
/P:分页显示,当屏幕无法将信息完全显示时,可使用其进行分页显示;
/A:显示具有特殊属性的文件;
/S:显示当前目录及其子目录下所有的文件。
举例:DIR /P
将分屏显示当前目录下文件。在当前屏最后有一个“Press any key to continue . . .”提示,
表示按任意键继续。
2、CD
含义:进入指定目录
格式:CD [路径]
举例:CD DOS
CD命令只能进入当前盘符中的目录,其中“CD\”为返回到根目录,“CD..”为返回到上一层目录。
3、MD
含义:建立目录
格式:MD [盘符][路径]
举例:MD TEMP
表示在当前盘符下建立一个名为TEMP的目录。
4、RD
含义:删除目录
格式:RD [盘符][路径]
举例:RD TEMP
表示删除当前路径下的TEMP目录,需要注意的是,此命令只能删除空目录。
5、COPY
含义:拷贝文件
格式:COPY [源目录或文件] [目的目录或文件]
举例1:COPY C:\*.COM D:\",表示将C盘根目录下所有扩展名为COM的文件拷贝到D盘根目录中。
举例2:COPY C:\autoexec.bat C:\autoexec.bak
表示将autoexec.bat文件复制成为扩展名为BAK的文件。输入DIR命令,可以发现此变化。
6、DEL
含......
DOS命令全集(2006-05-09 17:55:00)
摘要:
cd 改变当前目录 sys 制作DOS系统盘
copy 拷贝文件 del 删除文件
deltree 删除目录树 dir 列文件名
diskcopy 制磁盘 edit 文本编辑
format 格式化磁盘 md 建立子目录
mem 查看内存状况 type 显示文件内容
rd 删除目录 ren 改变文件名
cls 清屏
[适用场合] 屏幕上太乱了,或是屏幕上出现乱码了, 清除屏幕上显示内容但不
影响电脑内部任何信息
[用 法] cls 回车
move 移动文件,改目录名
[适用场合] 移动文件到别的目录
[用 法] move [文件名] [目录] 移动文件至新目录下
move [目录名] [目录名] 改目录名
[例 子] c:\>move c:\autoexec.bat c:\old
移动autoexec.bat文件至old目录下
c:\>move c:\config.sys c:\temp
移动config.sys文件至old目录下
more 分屏显示
[适用场合] 当输出很多一屏显示不下时采用,几乎适合所有命令,尤其是type
等命令时很有用。 使用more时磁盘不能有写保护,也不适合光驱。
[用 法] type [文件名] | more 分屏显示文件内容
more < [文件名] 分屏显示文件内容
[例 子] C:\>type msdos.w40 | more
xcopy 拷贝目录和文件
[适用场合] 在进行连同子目录一起拷贝时很有用,在拷贝大量文件时比COPY命令
要快得多
[用 法] xcopy [文件名] [目录] 将指定文件......
VB6.0编写木马程序代码及详解(2006-03-18 19:21:00)
摘要:“特洛伊木马”有被称为BO, 是在美国一次黑客技术讨论会上由一个黑客组织推出的。它其实是一种客户机/服务器程序,其利用的原理就是:在本机直接启动运行的程序拥有与使用者相同的权限。因此如果能够启动服务器端(即被攻击的计算机)的服务器程序,就可以使用相应的客户端工具客户程序直接控制它了。下面来谈谈如何用VB来实现它。
使用VB建立两个程序,一个为客户端程序Client,一个为服务器端程序systry。
在Client工程中建立一个窗体,加载WinSock控件,称为tcpClient,协议选择TCP,再加入两个文本框,用以输入服务器的IP地址或服务器名,然后建立一个按钮,按下之后就可以对连接进行初始化了,代码如下
Private Sub cmdConnect_Click()
If Len(Text1.Text) = 0 And Len(Text2.Text) = 0 Then
MsgBox ("请输入主机名或主机IP地址。")
Exit Sub
Else
If Len(Text1.Text) > 0 Then
tcpClient.RemoteHost = Text1.Text
Else
tcpClient.RemoteHost = Text2.Text
End If
End If
tcpClient.Connect
Timer1.Enabled = True
End Sub
连接建立之后就可以使用DataArrival事件处理所收到的数据了。
连接建立之后就可以使用DataArrival事件处理所收到的数据了。
在服务器端systry工程也建立一个窗体,加载WinSock控件,称为tcpServer,协议选择TCP,在Form_Load事件中加入如下代码:
Private Sub Form_Load()
tcpServer.LocalPort = 1999
tcpServer.Listen
End Sub
准备应答客户端程序的请求连接,使用ConnectionRequest事件来应答户端程序的请求,代码如下:
Private Sub tcpServer_ConnectionRequest
(ByVal requestID As ......
为什么operator=操作符返回引用(2006-03-10 18:36:00)
摘要:MSDN文档中解释到:operator=操作符缺省情况下返回引用——
TYPE& TYPE::operator=(const TYPE&)
为什么呢?我对此的理解是:“=”是个二进制操作符。其传入的参数是引用对象,而其它的参数是类实例,“=”在这个类实例中被重载。而我在实际应用中可以不用返回任何类型(void)来实现赋值操作符,并仍然可以完成赋值操作。我这样做正确吗?如果不正确,那么为什么缺省的实现返回引用呢?
解答:
如果你再花点时间想一想可能就会有答案。其实很简单。operator=返回引用的理由是使你能在一个语句中连接多个赋值。
TYPE a,b,c,d;
…
a = b = c = d;
编译器是象这样解释前面一行的:
a = (b = (c = d));
在编译过程中,赋值是右结合的。说白了就是如果你想要玩一下多个赋值,operator=返回的东西必须是右(rhs)赋值。除了返回对对象自身的引用还能有什么呢?这就是为什么operator=最后一行总是返回对this的引用:
CMyClass& CMyClass::operator=(const CMyClass& rhs) {
......
// do the
// assignment
return *this;
};
rhs参数被声明为常量的话,就允许常量对象的赋值。没有理由不允许。为什么operator=要返回非常量引用呢?所以不管在哪里你都能使用赋值语句对TYPE进行引用:
void MyFunc(TYPE& a);
...
TYPE a,b;
MyFunc(a=b); // 赋值以后传递
由于operator=返回非常量,你甚至可以使用圆括弧重载通常的等号结合率:
TYPE a,b,c;
(a = b) = c;
图一是简单的示例。并有一个问答题:当你完成并运行FOO时,它的输出是什么?
如果你想要学习更多的关于赋值操作的内容,我强烈推荐一本书《Effective C++》作者是Scott Meyers。本书由Addison Wesley Longman, 1997出版。 ......
第三章: C语言程序设计初步(三)(2005-12-16 20:00:00)
摘要:循环结构程序
循环结构是程序中一种很重要的结构。其特点是, 在给定条件成立时,反复执行某程序段,直到条件不成立为止。 给定的条件称为循环条件,反复执行的程序段称为循环体。 C语言提供了多种循环语句,可以组成各种不同形式的循环结构。
while语句
while语句的一般形式为: while(表达式)语句; 其中表达式是循环条件,语句为循环体。
while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。其执行过程可用图3—4表示。 统计从键盘输入一行字符的个数。
#include <stdio.h>
void main(){
int n=0;
printf("input a string:\n");
while(getchar()!='\n') n++;
printf("%d",n);
}
本例程序中的循环条件为getchar()!='\n',其意义是, 只要从键盘输入的字符不是回车就继续循环。循环体n++完成对输入字符个数计数。从而程序实现了对输入一行字符的字符个数计数。
使用while语句应注意以下几点:
1.while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
void main(){
int a=0,n;
printf("\n input n: ");
scanf("%d",&n);
while (n--)
printf("%d ",a++*2);
}
本例程序将执行n次循环,每执行一次,n值减1。循环体输出表达式a++*2的值。该表达式等效于(a*2;a++)
2.循环体如包括有一个以上的语句,则必须用{}括起来, 组成复合语句。
3.应注意循环条件的选择以避免死循环。
void main(){
int a,n=0;
while(a=5)
printf("%d ",n++);
}
本例中while语句的循环条件为赋值表达式a=5, 因此该表达式的值永远为真,而循环体中又没有其它中止循环的手段, 因此该循环将无休止地进行下去,形成死循环。4.允许while语句的循环体又是while语......
第三章: C语言程序设计初步(二)(2005-12-16 19:55:00)
摘要:分支结构程序
关系运算符和表达式
在程序中经常需要比较两个量的大小关系, 以决定程序下一步的工作。比较两个量的运算符称为关系运算符。 在C语言中有以下关系运算符:
< 小于
<= 小于或等于
> 大于
>= 大于或等于
== 等于
!= 不等于
关系运算符都是双目运算符,其结合性均为左结合。 关系运算符的优先级低于算术运算符,高于赋值运算符。 在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。
关系表达式
关系表达式的一般形式为: 表达式 关系运算符 表达式 例如:a+b>c-d,x>3/2,'a'+1<c,-i-5*j==k+1;都是合法的关系表达式。由于表达式也可以又是关系表达式。 因此也允许出现嵌套的情况,例如:a>(b>c),a!=(c==d)等。关系表达式的值是“真”和“假”,用“1”和“0”表示。
如: 5>0的值为“真”,即为1。(a=3)>(b=5)由于3>5不成立,故其值为假,即为0。
void main(){
char c='k';
int i=1,j=2,k=3;
float x=3e+5,y=0.85;
printf("%d,%d\n",'a'+5<c,-i-2*j>=k+1);
printf("%d,%d\n",1<j<5,x-5.25<=x+y);
printf("%d,%d\n",i+j+k==-2*j,k==j==i+5);
}
char c='k';
int i=1,j=2,k=3;
float x=3e+5,y=0.85;
printf("%d,%d\n",'a'+5<c,-i-2*j>=k+1);
printf("%d,%d\n",1<j<5,x-5.25<=x+y);
printf("%d,%d\n",i+j+k==-2*j,k==j==i+5);
在本例中求出了各种关系运算符的值。 字符变量是以它对应的ASCII码参与运算的。对于含多个关系运算符的......
第三章:C语言程序设计初步(一)(2005-12-16 19:53:00)
摘要:C语言程序设计
本课介绍C语言程序设计的基本方法和基本的程序语句。
从程序流程的角度来看,程序可以分为三种基本结构, 即顺序结构、分支结构、循环结构。 这三种基本结构可以组成所有的各种复杂程序。C语言提供了多种语句来实现这些程序结构。 本章介绍这些基本语句及其应用,使读者对C程序有一个初步的认识, 为后面各章的学习打下基础。
C程序的语句
C程序的执行部分是由语句组成的。 程序的功能也是由执行语句实现的。
C语句可分为以下五类:
1.表达式语句
2.函数调用语句
3.控制语句
4.复合语句
5.空语句
1.表达式语句
表达式语句由表达式加上分号“;”组成。其一般形式为: 表达式; 执行表达式语句就是计算表达式的值。例如: x=y+z; 赋值语句y+z; 加法运算语句,但计算结果不能保留,无实际意义i++; 自增1语句,i值增1
2.函数调用语句
由函数名、实际参数加上分号“;”组成。其一般形式为: 函数名(实际参数表); 执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,然后执行被调函数体中的语句,求取函数值。(在第五章函数中再详细介绍)例如printf("C Program");调用库函数,输出字符串。
3.控制语句
控制语句用于控制程序的流程, 以实现程序的各种结构方式。
它们由特定的语句定义符组成。C语言有九种控制语句。 可分成以下三类:
(1) 条件判断语句
if语句,switch语句
(2) 循环执行语句
do while语句,while语句,for语句
(3) 转向语句
break语句,goto语句,continue语句,return语句
4.复合语句
把多个语句用括号{}括起来组成的一个语句称复合语句。 在程序中应把复合语句看成是单条语句,而不是多条语句,例如
{
x=y+z;
a=b+c;
printf(“%d%d”,x,a);
}
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾,在括号“}”外不能加分号。
5.空语句
只有分号“......
经典c程序100例==1--10(2005-12-15 16:45:00)
摘要:【程序1】
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去
掉不满足条件的排列。
2.程序源代码:
#include "stdio.h"
#include "conio.h"
main()
{
int i,j,k;
printf("\n");
for(i=1;i<5;i++) /*以下为三重循环*/
for(j=1;j<5;j++)
for (k=1;k<5;k++)
{
if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/
printf("%d,%d,%d\n",i,j,k);
}
getch();
}
==============================================================
【程序2】
题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高
于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提
成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于
40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于
100万元时,超过100万元的部分按1%提成,从键盘输入当月利润......