VBA,VB 6.0计算数据类型占用内存大小

本文介绍了在VBA和VB6.0中如何计算数据类型占用的内存大小,由于这两个环境没有内置SizeOf函数,作者通过分析VBA的内存分布和一维数组的特性,提出了一种定义一维数组来间接获取内存占用的方法,以方便调用Windows API。文章最后邀请对此感兴趣的读者加入交流群进一步探讨。

需求背景

 C、C++和.net语言都提供了计算变量内存大小的函数即SizeOf,该函数能正确返回数据类型占用的内存字节数,但是VBA、VB6.0没有直接提供。特别在调用Windows API的时候,该功能显示得特别重要。

实现思路

 VBA、VB6.0虽然没有提供指针运算符,但提供了几个获取变量指针(内存地址)的值的函数。

public function VarPtr(ptr as Any) as longPtr
'获取变量自身的内存地址

public function StrPtr(ptr as Any) as longPtr
'获取字符串值的内存地址

public function ObjPtr
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值