精华内容
下载资源
问答
  • 这在c语言是一个自然而然的问题,然而在VB6,因为微软有意隐藏了指针,这个操作便变得困难重重。然而这个问题的研究让我对VB6的指针有了更清楚地认识,也彻底弄清楚了字符串(变长)在VB6的存储格式。Sub ...

        这在c语言中是一个自然而然的问题,然而在VB6中,因为微软有意隐藏了指针,这个操作便变得困难重重。然而这个问题的研究让我对VB6中的指针有了更清楚地认识,也彻底弄清楚了(变长)字符串在VB6中的存储格式。

    Option Explicit
    Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
    
    Sub main()
        '构建一个整型数组
        Dim a(7) As Integer
        a(0) = 8    '为字符串数据之前的四个字节,存储字符串的长度
        a(1) = 0
        a(2) = 66   'B
        a(3) = 83   'S
        a(4) = 84   'T
        a(5) = 82   'R
        a(6) = 0    '字符串结束标志NULL UNICODE
        
        Dim s As String
        CopyMemory ByVal VarPtr(s), VarPtr(a(2)), 4
        Debug.Print s
    End Sub
    
    
    '执行结果为BSTR
    

          来一张图,让操作更直观一些。


        经过这个实验,让我感到在VB6中,虽然指针操作不像C中那么方便,但是操作原理和C还是一样的。

    展开全文
  • Option Explicit Private Declare Sub CopyMemory Lib "kernel32"...'在过程声明的变量,都建立在栈上,先声明的变量在高地址,后声明的变量在低地址,而字符串的字节排在前面的在低地址...
    Option Explicit
    Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
    
    '在过程中声明的变量,都建立在栈上,先声明的变量在高地址,后声明的变量在低地址,而字符串中的字节排在前面的在低地址,排在后面的在高地址,恰好与这相反
    Sub main()
        Dim a4 As Integer
        Dim a3 As Integer
        Dim a2 As Integer
        Dim a1 As Integer
        Dim a0 As Integer
        Dim x As Integer
        Dim y As Integer
        
        Dim s As String
        
        '生成字符串的长度
        y = 8
        x = 0
        '在数组中生成"BSTR"字符串,并以0结尾
        CopyMemory a0, 66, 2
        CopyMemory a1, 83, 2
        CopyMemory a2, 84, 2
        CopyMemory a3, 82, 2
        CopyMemory a4, 0, 2
        'a0 = 66    '上面五句也可以写成这样,但是缺少了指针操作的味道
        'a1 = 83
        'a2 = 84
        'a3 = 82
        'a4 = 0
        
        Dim ps As Long
        ps = VarPtr(s)  '获取字符串变量的地址
        Dim pi As Long
        pi = VarPtr(a0) '获取字符串存储位置的起始地址
        CopyMemory ByVal ps, pi, 4 '把存储字符串的开始地址存入字符串变量的地址中
        'CopyMemory ByVal VarPtr(s), VarPtr(a0), 4 '上面五句也可以合并成本句
        Debug.Print s
    
    End Sub

        源代码中的注释已经说明问题了。

        写完代码,再去看书,发现书上说的已经足够清楚。愚笨的只是自己,算是给“纸上得来终觉浅,绝知此事要躬行。”做注吧。

    展开全文
  • VB中各简易符号的含义

    千次阅读 2019-01-30 13:52:21
    integer % 短整型 long & 长整型 single ! 单精度浮点型 double # 双精度浮点型 currency @ 货币型 string $ 字符型

    integer % 短整型
    long & 长整型
    single ! 单精度浮点型
    double # 双精度浮点型
    currency @ 货币型
    string $ 字符型

    展开全文
  • dim a as string=textbox1.text dim score as integer =cdbl(val(a.text)) '重点是这里 if score > 12 then ..... end if

    dim  a as string=textbox1.text

    dim score as integer =cdbl(val(a.text))   '重点是这里

    if score > 12 then

      .....

    end if 

    展开全文
  • (VB.Net)Integer转 Byte数组

    千次阅读 2019-04-28 11:56:34
    1、Integer转单个字节 Public Function iByte(ByVal i As Integer) As Byte Dim b() As Byte = BitConverter.GetBytes(i) Return b(0) End Function 2、Integer转双字节 '低字节在前,高字节在后 Public ...
  • VB判断Integer为空问题 我从数据库里读出最大值 当此值不存在(也就是数据库里为空) 然后去判断我取出来的 reader.GetInt32(0)为空 有没有类似C#里的 NULL判断 _________________________________________________...
  • 使用BigInteger解析方法http://msdn.microsoft.com/zh-cn/library/dd268285(v=vs.110).aspx[^]
  • (VB.Net) 数据类型

    2019-04-16 09:52:59
    数据类型 数据类型 存储 值范围 Boolean 取决于实施平台 Byte 1个字节 Char 2个字节 Date 8个字节 ... Integer 4个字节 Long 8个字节 ...
  • vb编程语言怎么通过获取一个变量的值去算它在数组下标的integer值?获取下标integer值的代码怎么思路?
  • VB只只允许输入汉字,输入其它字符无效,输入中文的时候程序好像什么也没做,但是当你的输入法不是中文状态,即将要输入英文或其它字符的时候,会立即弹出一个提示框,告诉你只允许输入中文,在不少的VB应用,进行...
  • VB.NET的除法运算符有两个:/(浮点除法)、\(整数除法) C#的除法运算符只有一个:/(除法) VB.NET的除法运算符与C#的除法运算符存在很大的差异,使用时注意区分。   关于VB.NET的除法运算符的介绍...
  • VB6的long是32位的,Integer是16位的

    千次阅读 2011-09-01 11:31:32
    Long(长整型)变量存储为 32 位(4 个字节)有符号的数值形式,其范围从 -2,147,483,648 到 2,147,483,647。Long 的类型声明字符为和号 (&)。
  • VB中调用API函数

    2020-10-13 09:53:58
    VB中调用API函数 API函数大多在windows/system32/user32文件夹的kernel等动态链接库文件,现在列举一个需要调用API函数的程序(本例程序使用的工具是VB)来简单介绍一下如何在程序调用API。 1、首先在VB中...
  • dim lengthmessagestring as integer lengthmessagestring=messagestring.length call a(alphabet,substitute,messagestring,lengthmessagestring) console.writeline() console.readline() End Sub ...
  • VB6.0 代码演示如何计算加权平均值,计算加权平均值可编写以下代码实现:  Private Sub Command1_Click()  Text7.Text = jiaquan(Text1, Text2, Text3, Text4, Text5, Text6)  End Sub  Private Function ...
  • vb.net类型转换函数

    万次阅读 2013-12-05 15:11:44
    VB6,一个Long类型数值占用32位(4字节),而在Visual Basic .NET 中一个Integer类型数值就占用32位,Long类型数值占用64位(8字节)。Byte 8位,1个字节 ; Short 16位,2个字节。计算机处理4字节数值更高效一些,...
  • OLE控件拖放源代码示例 过程名称:Label1_OLEDragDrop 参数:Data 为DataObject型 参数:Effect 为Long型 ...参数:Button 为Integer型 参数:Shift 为Integer型 参数:X 为Single型 参数:Y 为Single型
  • VB 用过程求组合数.rar

    2019-07-10 11:26:47
    VB 用过程求组合数,输入m和n,按等号键可得组合数,来看如下的简单代码:  Private Sub f(m As Integer, p As Long) '自定义通用过程,用于求阶乘  Dim i As Integer '声明局部变量  p = 1 '赋初值  For i = 1 ...
  • 细谈VB中的function程序应用问题!

    万次阅读 热门讨论 2012-06-06 21:14:05
    VB中function 程序如何应用?  Function 过程是由用户定义的独立的函数过程,与Sub字程序类似。Function 函数过程可读取参数,修改语句。可作为独立的基本语句调用,也可以在程序或是函数嵌套使用。它有返回值...
  • Casting is the process of converting one data type to another, for example, from an Integer type to a String type. Some operations in VB.NET require specific data types to work. Casting ...
  • 然后在自己的VB程序添加改控件(工程-部件-浏览)。  最好把这个ocx放到C:\WINDOWS\system32。  改控件的属性InTray属性用来设置是否显示在托盘,True为显示在托盘,False为不显示。TrayIcon属性是在托盘...
  • VB 求多个数的最大公约数,这应该是个比较简单的数学算法例子,求指定多个数的最大公约数,源码请详细代码。部分代码如下:  Private Function big(ByVal m%, ByVal n%) As Integer '自定义函数  If m  Do  r...
  • VB6.0 创建一个右键菜单,为了便于用户使用“粘贴”功能,特此自定义了一个右键菜单,在这个右键菜单用户可选择粘贴,直接从剪帖板粘贴内容到本窗口。以下是相关的代码:  Private Sub Picture1_MouseDown...
  • 首先,32位的话,第一位为符号位0为正,1为负 那最大正整数就是 2∧31-1,即31位全为1的情况,因为31位二进制的最高位是2∧30 负数是用补码来表示的,同理也是2∧31-1但是由于有 -0 ,用补码表示会出现溢出的...
  • VB 6.0 数组参数调用实例:  Dim A1(), B1(), C1() '声明数组  Private Sub Form_Load()  Dim i As Integer '给数组赋初值  Show  A1 = Array(2, 4, 6, 8, 10) '用Array函数赋值  B1 = Array(1, 3, 5, 7, 9, ...
  • VB学习记录——数组

    万次阅读 多人点赞 2019-07-06 13:05:49
    1.定义一个数组,其实就是让系统在内存分配一个连续的区域,用来存储数组的元素。其格式为:Dim 数组名字 (下界 To 上界) As 类型。 Dim MarkVB(1 To 30) As Integer '定义一个一维数组 上界30 下界是1 共30个...
  • VB中读取EXCEL源码

    热门讨论 2010-08-07 12:53:52
    VB读取EXCEL源码Private Sub Command1_Click() Dim i As Integer, j As Integer Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类 xlApp.Visible = False '设置EXCEL不可见 Set xlBook = xlApp....
  • vb6没有short类型,只有integer(Int16),long(Int32) vb.net有short(Int16),integer(Int32),long(Int64) 所以,注意转换。 另外,ByRef: 传地址;ByVal:传值 转载于:...
  • vb中如何定义变量

    千次阅读 2019-07-21 13:41:27
    dima,b as Integer 表明: 定义了一个变体型变量a定义了一个整型变量bDim定义局部变量还可以用:Static Private Public等 声明变量的格式为:<Public|Private|Dim|Static > <变量名> [As 数据类型] 。...
  • vb中的msgbox的用法

    千次阅读 2018-11-01 17:49:07
     在消息框显示信息,并等待用户单击按钮,可返回单击的按钮值(比如“确定”或者“取消”)。通常用作显示变量值的一种方式。2、语法  MsgBox(Prompt[,Buttons][,Title][,Helpfile,Context])  参数说明: (1)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,617
精华内容 12,246
关键字:

vb中的integer