易语言-多线程之传递多参数

 

传递多参数

第一种方法:

这个方法主要是针对普通类型的数据,除了字节集和自定义数据类型之外我们可以用的最简单的方式 。

可以将多个参数简单的写成长文本,然后通过文本分割取出所有的内容。

按钮被单击事件:

线程示例代码:

运行结果如下:

注:申请内存中的 +1 主要是为了文本表示 /0。

指针传递自定义数据类型

对于取指针这样操作字节集时需要有一个长度,否则无法取,因为它并不像文本那样有一个0结尾,因此字节集需要我们手动给它一个长度。

r

然后到代码编写那里将这个自定义类型创建出来。

接下来就要取自定义数据类型的内存地址了,这里使用一个比较简单的方法。

因为自定义数据类型中的数据是按照顺序进行排列的,在内存当中也是按照顺序进行排列的,所以说可以直接取第一个成员的地址然后依次去取后面数据的地址。

首先需要得到它的数据地址。

注:易语言会将自定义数据类型的长度进行对齐,按照四个字节对齐,最小是4字节,所以说这个短整数最小是四字节,这里文本型和字节集为什么会是四字节呢?这实际上这里保存的是一个地址,并不是把数据给保存进来了。这也就是为什么在参考当中都是传值,因为保存的都是地址。

双精度小数型是8个字节。

注:易语言的字节集存在内存当中相当于自己定义了一个格式,前面的1是固定的,然后是字节集长度,相当于给自己加了一个前缀。这时取出的字节集是最原始的字节集,由易语言处理过的字节集会有一个前缀,这8位应该是固定的。有一个它定义的表示方式。

注:自定义数据类型相当于是结构体。