当前位置: 网学 > 编程文档 > VB > 正文

VB也能访问内存

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式

    有人说vb不能操作内存,效率低下,我不是太赞同.vb跟c比当然效率比较低下了,但是如果使用得当还是有不少的效率提高的.

     在开发windows上的应用时(注意啊,不是驱动),理论上来说,用vb可以做任何软件.因为vb本身没有的,可以使用api,而win32 api时可以实现windows上的任何应用功能的.当然这和使用者的功力有很大的关系,如果c/c++的功力很好,你甚至可以用vb实现内存拷贝的功能,因为long类型可以做指针.

     最近在做界面, 对vb有点研究, 给个例子吧.比如10进制转换2进制.

     用vb的一般用除法这么做:
public function o2b(byval long nValue) as string
     dim nValueCopy as long
     dim nTmp as byte ''商
    dim sReturn as string ''返回值
    nValueCopy = nValue

     ''也有用nValue - 2^N 方式的,这里就不多说了

    do while nValueCopy > 0
          nTmp = nValueCopy / 2           
          sReturn = cstr( nValueCopy - nTmp / 2 ) & sReturn  ''反向累计
        nValueCopy = nTmp
     loop
  
     o2b = sReturn


end function

     而用c比较熟的人一般按位去做:
public function o2b(byref long nValue) as string
     dim nBit( 0 to 7 ) as byte       '' 最小的单位是byte了,放掩码
    dim nByte( 1 to 4 ) as byte     '' 分解nValue到字节的
    dim nTmp as byte
     dim pValue as long                '' 指针
     dim sReturn as string             '' 返回值
    dim i as byte, j as byte

     nBit(0) = 1            ''00000001  
     nBit(1) = 2            ''00000010
     nBit(2) = 4            ''00000100
     nBit(3) = 8            ''00001000
     nBit(4) = 16           ''00010000
     nBit(5) = 32           ''00100000
     nBit(6) = 64           ''01000000
    &

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号