两道简单的函数题vb设计题 求函数值

VB6与DLL函数 数组传递的问题
用VC6编写了┅个DLLDLL中有一个函数 需要根据VB6传过来的几个数据生成一个数组,而后把数组的值传回给VB6.具体代码如下:

// 整数转BCD码4位数转存后为2个字节 比洳1234 转存后为两个字节 低字节高4位为3 低4位为4 高字节高4位为1 低4位为2

VB6中的调用代码如下:

在VC中调试此代码得到的结果是第一个值为&H34=52,第二个值是&H12=18 为什么VB6调用DLL中的此函数后,得到的结果却不对呢  


另外还发现,如果把函数

VB调用此函数后的数是与函数中的赋值是一致的.


'整数转BCD码,4位数转存後为2个字节 比如4660=&h1234 转存后为两个字节 低字节高4位为3 低4位为4 高字节高4位为1 低4位为2

------解决方案--------------------非要“钻牛角尖”搞清楚的话在C函数中插入“__asm int 3;”然後在VS里面运行,进入调试环境按Alt+8键显示每句C对应的汇编单步执行调试。

我要回帖

更多关于 简单的函数题 的文章

 

随机推荐