vbNull 和vbNullString是什么意思
发布网友
发布时间:2022-05-01 19:49
我来回答
共3个回答
热心网友
时间:2022-06-22 05:16
Null, Empty, Nothing, and vbNullString的区别
以上这些奇怪的数值间有些微妙的不同含义:
Null:Null是一个象Integer或者String一样的变量类型,它表示一个没有合法数据的变量。这有别于zero、Nothing、Empty或者vbNullString。许多数值与Null结合在一起,都将产生Null结果。比如:
表达式 结果
Null - Null Null
Null + 7 7
Null = Null Null
你可以使用IsNull语句来判断表达式是否为Null:
If IsNull(my_variable) Then ...
Empty:这也是一个象Integer或者String一样的变量类型,它表示了一个还没有进行初始化的变量。它与Null的意义不同,Null表示没有合法数据。
一个没有初始化的变量的数值是Empty。你可以使用IsEmpty语句来判断是否变量进行了初始化:
If IsEmpty(my_variant) Then ...
Nothing:这是一个指向空对象的对象引用。将对象引用设置为Nothing,就释放了那个对象。如果没有其他的引用指向对象,Visual Basic就将销毁这个对象。
Dim obj As Form1
:
Set obj = Nothing 注释: Free the object reference.
使用Is Nothing语句来判断是否一个引用为Nothing:
If obj Is Nothing Then ...
vbNullString:这是个常量,表示一个empty字符串。它与空白字符串""不同,表示什么也没有的字符串(nothing string)。对于许多场合,它被当作一个empty字符串""处理,真正使用它的目的是传递null参数给库函数。
Null是一个很奇怪的数值,它不是zero,不是Nothing,不是vbNullString。它是没有定义的东西。
判断字符串是否为空白
有以下几种方法判断一个字符串是否为空白:
Dim txt As String
Dim blank As String
blank = ""
:
If Len(txt) = 0 Then ...
If txt = vbNullString Then ...
If txt = "" Then ...
If txt = blank Then ...
经过测试,Len(txt)=0的方法要比其他方法快20%多。
从字符串尾部搜索匹配子串
在Visual Basic 版本6中,可以使用InStrRev函数实现从字符串尾部搜索匹配子串的功能。在早期的版本中,没有这个函数,做为替换,请使用下面的代码:
Function LastInStr(txt As String, pattern As String)
Dim pos1 As Integer
Dim pos2 As Integer
pos2 = 0
Do
pos1 = pos2
pos2 = InStr(pos1 + 1, txt, pattern)
Loop While pos2 > 0
LastInStr = pos1
End Function
参考资料:http://www.programfan.com/club/showtxt.asp?id=271636
热心网友
时间:2022-06-22 05:17
Null:Null是一个象Integer或者String一样的变量类型,它表示一个没有合法数据的变量。这有别于zero、Nothing、Empty或者vbNullString。许多数值与Null结合在一起,都将产生Null结果。比如:
表达式 结果
Null - Null Null
Null + 7 7
Null = Null Null
可以使用IsNull语句来判断表达式是否为Null:
If IsNull(my_variable) Then ...
vbNullString:这是个常量,表示一个empty字符串。它与空白字符串""不同,表示什么也没有的字符串(nothing string)。对于许多场合,它被当作一个empty字符串""处理,真正使用它的目的是传递null参数给库函数。
热心网友
时间:2022-06-22 05:17
vbNull 空数据,比如 long 型就代表是0
vbNullString 空字符串