- 初中三年级
- 2220985
- 396
- 0
- 532 朵
- 2506 个
- 334 个
- 480
- 2013-10-27
|
1#
t
T
发表于 2014-10-09 16:01
|
|只看楼主
按键里的夫妻——棒打鸳鸯引发的惨案 万万没有想到……有一天居然会栽在if语句手里。 |
First—小编的凄惨经历[backcolor=rgb(245, 222, 179)]
小编今早写脚本,由于无意间将if语句中的end if 错删了,弹出了这样的错误提示:(错误码0)没有找到合法的符号。
看到这个提示,小编以为是哪个逗号不小心写成中文逗号,没成想丢了个end if也是出现这样的提示。 好在代码不多,所以错误点容易找到,那……如果,代码多达几百上千条的时候呢?眼泪马上掉出来~
|
[backcolor=rgb(46, 139, 87)]今天在这里和童鞋们一起来了解下,按键里的夫妻组合,看看这些夫妻被分开之后都会出现什么样的可怕情况: |
Second—一夫一妻制[backcolor=rgb(245, 222, 179)] [backcolor=rgb(46, 139, 87)]If……end if 判断语句 |
If判断语句,有分为两种:
1、 if语句条 (条模式) 当判断完之后,要执行的语句只有一条的时候,使用if语句条
例如: - If 1 > 0 Then MessageBox"Hello~"
复制代码 // If语句条,不需要添加end if //条模式的时候,if语句还是单身,不是夫妻组合
2、 if语句块(块模式) 当判断完之后,要执行的语句有很多条的时候,使用if语句块
例如: - If 1 > 0Then
- MessageBox"Hello~"
- MessageBox"Hello~"
- End If
复制代码//块模式的时候,if语句是已婚状态,夫妻组合。如果这个时候缺少了 end if 就会出现下面的错误提示:
- 您所在的用户组无法下载或查看附件
拓展:if语句块中 then 可以省略 例如: - If 1 >0
- MessageBox"Hello~"
- MessageBox"Hello~"
- End If
复制代码 |
[backcolor=rgb(46, 139, 87)]For……next 循环语句 |
例子:
- For i=1 To 10
- //这里的脚本可以循环10次
- Next
复制代码
拓展:如果,循环体里不需要用到循环次数值,例如,需要打开十个记事本,可以这样写: - For 10
- RunApp "Notepad.exe"
- Next
复制代码
当for循环语句缺少next的时候,会出现下面的错误提示:
- 您所在的用户组无法下载或查看附件
|
[backcolor=rgb(46, 139, 87)]Do……Loop 循环语句 |
Do……Loop循环语句分为两种情况: 1、 前判断 Do While条件 Loop 在执行循环体之前判断条件,满足则进入循环不满足则不进入 例如: - i=1
- Do While i>1
- i = i - 1
- TracePrint 1
- Loop
复制代码 //一次也不执行
2、后判断 Do Loop While条件 在执行循环体之后判断条件,先进入一次循环,执行完一次循环之后再开始判断是否满足条件 例如: - i=1
- Do
- i= i - 1
- TracePrint 1
- Loop While i>1
复制代码 //执行一次TracePrint1
当do……loop循环语句缺少loop的时候,会出现下面的错误提示:
- 您所在的用户组无法下载或查看附件
|
[backcolor=rgb(46, 139, 87)] VBS执行块 |
语法 :- VBSBegin
- '需要插入的VBS代码
- VBSEnd
复制代码
VBSBegin 缺少VBSEnd 会出现的提示:
- 您所在的用户组无法下载或查看附件
|
[backcolor=rgb(46, 139, 87)]LogStart 开始记录日志 |
语法 :
Logstart缺少logstop 不会出现错误提示,如果忘记了logstop,蛋疼的点就是它会把你后面不需要记录的东西也记录。 |
[backcolor=rgb(46, 139, 87)]注释符号 /* 和 */ |
小编习惯用的注释符号是// ,如果喜欢使用/* */ 作为注释符的童鞋,需要注意一下:/* */注释符不支持嵌套使用 例如: /* /* */ */
/* 缺少*/ 会出现的提示:
- 您所在的用户组无法下载或查看附件
| Third—一夫二妻制[backcolor=rgb(245, 222, 179)] [backcolor=rgb(46, 139, 87)]Select Case选择语句 |
语法: - Select Case 选择条件
- Case 0
- //情况1
- Case 1
- //情况2
- Case Else
- //否则
- End Select
复制代码
例子1:- x=1
- Select Case x
- Case 1
- MessageBox"1"
- Case 2
- MessageBox"2"
- End Select
复制代码 例子2: - x="Hello"
- Select Case x
- Case "Hello"
- MessageBox"Hello"
- Case "Yes"
- MessageBox"Yes"
- End Select
复制代码
Select Case选择语句它是一夫二妻制度,少了Case和End Select都不行
Select Case选择语句缺少case 会出现的错误提示:
- 您所在的用户组无法下载或查看附件
Select Case选择语句缺少End Select会出现的错误提示:
- 您所在的用户组无法下载或查看附件
虽然是一夫二妻制度,老公对两个老婆的态度还是很公平的,少了谁提示都是一样的:(错误码0)没有找到合法的符号。 |
[backcolor=rgb(46, 139, 87)] Function 函数 |
Function函数也是一夫二妻制:
老公 Function 函数(参数列表) 老婆1号End Function 老婆2号 call 语句
语法: - Function 函数(参数列表)
- //我是一个函数,被你调用了
- End Function
复制代码
Function函数分为两种情况:
1、 有参数传递
例子: - x = "成功调用"
- call 输出(x) //带入参数x调用function函数
- Function 输出(x) //参数为x
- MessageBox x
- End Function
复制代码// X是字符串变量,值为"成功调用" 将x作为参数调用function函数 ,x值传入function函数 。
拓展: 当我们传入function函数的值是变量的时候,我们称之为形参,也就是说这个参数是可以变化的,它根据变量值的变化而变化 当我们传入function函数的值是常量数值,我们称之为实参,也就是说这个参数是不能变化的,写了5就是5。
2、 没有参数传递
例子: - call 输出()
- Function 输出()
- MessageBox "成功调用"
- End Function
复制代码 当function函数缺少 End Function 会出现的提示:
- 您所在的用户组无法下载或查看附件
当function函数缺少 call语句 会出现的提示…… 嘛?忽悠谁呢?缺少call语句啥都没有提示! 素的,这算是另类的错误吧,虽然半年可能都不会出现一次,但是出现一次疼半年啊,也是需要注意的,如果几千行代码,偶然间不小心call语句弄没了,结果万般调试都没有反应,也是一件值得痛哭流涕的事儿~ |
|
[backcolor=rgb(46, 139, 87)]Sub 子程序 |
语法:- Sub 子程序()
- //我是一个过程,被你调用了
- End Sub
复制代码 //它和function函数像是两兄弟,兄弟俩感情好到不分彼此,这不,哥哥function有个老婆叫call语句,弟弟sub也有个老婆叫call语句: 老公 :sub() 老婆1号:End sub 老婆2号:call 语句
Sub和function两兄弟,我们是经常使用的,他们的作用极其相似,sub也和function一样分为两种情况,有参数和没参数,详见上面funcation的说明,这里就不细说了。我们主要关注下他们不一样的地方,哪里不一样呢? Function支持返回值,而sub不支持。
Function返回值使用例子: - x = "成功调用"
- 返回值= 输出(x) //带入参数x调用function函数
- Function 输出(x)
- x="改变"
- 输出=x
- End Function
复制代码//Funcation的函数名称是用来存放返回值的。
Sub缺少end sub会出现的提示:(错误码0)没有找到合法的符号。 缺少call语句的情况参见上面的funcation,毕竟他们是兄弟~很多东西都是一样样的。 | Fourth—(包办婚姻)我情你不愿[backcolor=rgb(245, 222, 179)] [backcolor=rgb(46, 139, 87)]Goto跳转和Rem 标记/注释 |
说到Rem和Goto 就感觉到淡淡的忧伤
童鞋们都知道,跳转和标记是一对的,要一起使用对吗? 可是,Rem标记它还有另外的身份,那就是注释,它并不是只钟情于Goto而已。 所以 Rem没有了Goto是可以的, 而Goto却不能没有Rem。
那句伤感的话怎么说来着:没有了我,你还有其他人,而我只有你。可怜的Goto…… Goto缺少Rem会出现的提示:
- 您所在的用户组无法下载或查看附件
| Last—如何排错呢?[backcolor=rgb(245, 222, 179)] [backcolor=rgb(46, 139, 87)]排错 |
例如do……loop这样的,出现错误之后会直接提示你缺少了loop,如果都是这样提示那就好办了,可是如果提示的是没有找到合法符号这样的呢?
当我们在我们的代码里看不出这些夫妻组合到底谁少了谁,那说明我们的代码肯定是乱到了一种境界…… 按下F4吧,按下之后你就解脱了。 (F4键是按键精灵里规范代码的快捷键,按下之后,代码立马自动排列整齐,快得很轻松的很)
下面拿if语句做个例子,一个六个if语句嵌套着:
- 您所在的用户组无法下载或查看附件
少了一个end if ,肉眼想要看出来很费劲。 按下F4之后:
- 您所在的用户组无法下载或查看附件
清晰的看到 最外层的if 少了end if | 如果童鞋们对于本帖里的内容有疑问或者建议,欢迎跟帖讨论~~本文由按键学院提供技术支持
2个月学会赚大钱的脚本,报名倒计时11天 按键学院10月实战班卷土来袭
|