VBS中的左移位&右移位运算

标签: , , , ,

之前用VBS写UTF-16编码转UTF-8编码的时候要用到移位运算,但是VBS中没有移位运算符,就用简单的乘除运算实现了移位运算函数。而移位运算并不仅仅是简单的乘除而已,这样写可能会有未知的错误。现在知道了MSScriptControl.ScriptControl对象,实现左移位、右移位是如此的简单。

Function LShift(Value, Shift)
	Set sc = CreateObject("MSScriptControl.ScriptControl")
	sc.Language = "JScript"
	LShift = sc.Eval(Value & "<<" & Shift)
End Function

Function RShift(Value, Shift)
	Set sc = CreateObject("MSScriptControl.ScriptControl")
	sc.Language = "JScript"
	RShift = sc.Eval(Value & ">>" & Shift)
End Function

随机文章:

  1. MySQL的Unicode支持
  2. VBS面向对象编程与Me关键字
  3. 又遇VBS中&H前缀十六进制数的陷阱
  4. jQuery ajax返回parsererror错误的解决方法
  5. Asc/AscB/AscW和Chr/ChrB/ChrW函数之间的区别

留下回复