Dim i As sting*5为什么提示编译错
- 教育综合
- 2024-03-11 13:00:00
VB运行时出现“编译错误:缺少as"
出现“编译错误:缺少as"的原因是你的语句“open f:\121.w for output as #1”中缺少了引号。应该是这样的: open "f:\121.w" for output as #1 因为VB中的冒号“:”用来分割两个语句,这样分割以后前面的语句就成了“open f”,是一个不完整的语句,就“缺少as”咯! 你上面的代码修改后应该是: Private Sub command1_click() Dim s As Integer s = 5 Close #1 Open "f:\121.w" For Output As #1 Print #1, s Close #1 End Subvb中dim的问题
Dim strIDcard As String, strText As String strIDcard是用来储存用户输入的身份证号码,strText是用来储存InputBox函数显示的文本。 这两个都是变量名称,都是程序员自己定义的。随便取什么名字都可以的(只要不是系统的保留关键字)。如果变量事先没有定义好的话,那么将会产生两种后果: 1、如果加了强制变量声明(Option Explicit),编译器则会提示“变量未定义”的编译错误。 2、如果没有加强制变量声明,编译器则会自动声明一个变体型的变量。相当于 Dim strIDcard, strText 不过是编译器自动加上的,程序员看不见的。VB中,编译的时候,什么时候用dim * as single,什么时候用dim*as string
DimsasString
DimiasLong
我们前面已经提到过,上面的两个定义语句定义了一个字符串型变量s和一个长整形变量i,那么我们看下面这个赋值语句:
s=123
i="abc"
这个时候,就出现错误了,我们会神奇的发现s=123并没有发生错误,而i="abc"却出现了类型不匹配的错误。这是因为VB自动对s=123进行了编译,将123处理成了“123”字符串并且复制给了s,但是后面的字符串"abc"压根就不能被识别为数值。
所以i="abc"就出现了类型不匹配的错误。因为i我们定义的是一个长整型变量,它只能表示一个很大的数字,但我们却硬生生将它赋值成字符串,所以产生了不匹配。
所以,我们日常在定义变量的时候一定要注意将数值型变量和字符串型变量进行严格的区分和定义,这样才能游刃有余的操作VB语言了!
详见我们团队的分享帖:
http://tieba.baidu.com/f?kz=2678455193
vb编译错误:用户定义类型未定义
程序中缺少必要的部件或引用。 使用菜单项【工程】-【部件】,或者【工程】-【引用】,打开部件(或引用)的窗口,选择你程序中涉及的部件(或引用)。VB中len(a)提示编译出错,提示缺少(
InStr是VB保留字,不能用作变量名,稍微改一下即可: c = Len(instr1) '当然前面的定义和赋值也要改为instr1 补充:instr是VB本身的一个内部函数名,所以不能用作变量名,不然VB会搞不清楚它究竟是函数还是变量!展开全文阅读