![]() ![]() ![]() |
seemk 发表于 2015-12-29 09:30 内存数据无类型。不管是数组还是结构体,都是一块连续的内存。 直接申请一块内存把指针传进API里面,然后把这块内存里的数据再还源为组数或结构体就行了。没有调用不了的 |
sam7894604 发表于 2015-12-29 19:10 1.原来TC里的变量的概念是这样的,一直以为TC里的变量地址就像C语言那种变量地址呢 谢谢 |
seemk 发表于 2015-12-29 09:30 1. 变量指针与变量地址是不同的东西 变量指针:取的是该变量的内存地址 变量地址:取的是该变量中保存的数据地址 2. int * 类型,如果你确定是数组,那可以用结构体作为代替使用,效果相同 |
|
本帖最后由 seemk 于 2015-12-29 09:37 编辑 感谢关注! 下载了您的代码,我尝试使用引用来代替指针,结果以失败告终.总结如下: TC是无法通过API给回调函数传递引用的,所以只能用"获取变量指针"这种传参方式来改变外部变量了(使用全局变量的方法除外) "获取变量地址"也不能实现这样的需求,因为TC只有"地址取值"而没有"地址引用"(有就好了),所以无法改变外部变量的值 鄙人认为,有一种API函数似乎是TC调用不了的,比如这个API的某个参数是整形数组,也就是int *类型,而这个API的功能是改变这个数组的值.而"获取变量地址"是无法获取数组的地址的,所以这种情况是不是无法使用TC调用呢? |
| 那是为了 支持 win32 api准备的 |
| 你懂的,tc就是这么任性,其实对于没编程基础,或者就是玩一点易语言的都搞不清指针是怎么回事,直接来变量地址更直接易懂 |
/2
GMT+8, 2025-12-21 02:33 , Processed in 0.104525 second(s), 27 queries .
Powered by 海安天坑软件科技有限公司
© 2001-2013 Comsenz Inc.