企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
> **E64扩展了一些易语言基础数据类型 详情如下定义** 1. 系统基础数据类型20种,其他类型一般由这些类型扩展而来请尽量使用基础数据类型 2. 除通用型外所有变量定义即被初始化为0,数组定义被初始化为{0},不想初始化可以使用 [不初始化]修饰。 3. 在注释开始的位置加\[\*\]可以修饰为指针,可以修饰多级指针如\[\*\*\*\] 4. 基础数据类似与C语言对照表,指针型可以相互转换,数值型转换注意精度。 5. 注意:日期时间型 将被翻译为时间戳 6. 无限参数 是个特殊的类型,表示参数从此位置往后是可变参数数量的,请参考压缩包例子。 |序号|E64类型|C类型|32大小/字节|64大小/字节| |---|---|---|---|---| |1|字节型|char|1|1| |2|短整数型|short|2|2| |3|整数型|int|4|4| |4|长整数型|__int64|8|8| |5|小数型|float|4|4| |6|双精度小数型|double|8|8| |7|逻辑型|int|4|4| |8|日期时间型|unsigned __int64|8|8| |9|文本型|char*|4|8| |10|字节集|char*|4|8| |11|子程序指针|void*|4|8| |12|系统整数|size_t|4|8| |13|指针型|void*|4|8| |14|宽字节|wchar_t|2|2| |15|宽字符|wchar_t*|4|8| |16|无符号_字节型|unsigned char|1|1| |17|无符号_短整数型|unsigned short|2|2| |18|无符号_整数型|unsigned int|4|4| |19|无符号_长整数型|unsigned __int64|8|8| |20|通用型|auto|根据赋值决定|根据赋值决定| |21|无限参数|...|这是一个特殊的定义 表示此参数数量可变| > 示例: ![](https://img.kancloud.cn/6a/d3/6ad3d6ba70bb6fcec3893dc206612c6d_680x385.png) > **下面请注意重点来了** * **自定义数据类型** 1. E64的自定义数据类型的使用跟往常易语言一样,但需要注意的是**指针类型**的自定义数据类型! 2. 如果一个**自定义数据类型**的**成员**为另外一个数据类型的指针,此时此成员必须备注为指针 **[*]** 修饰 或勾选 **【传址】**。 3. 下面分别演示 **DT1 、DT2 、DT3** 的**声明**以及**访问** 跟转换为C代码的结果。 > ![](https://img.kancloud.cn/3d/e3/3de39ba90583e126b13074b0cb46ba5a_680x639.png) 4. 这里主要演示说明 **数据类型**如果修饰为 **指针** 虽然调用方法在易语言里都是以点 **.成员** 的方式但生成的C代码却不同,如果修饰为指针将会自动翻译为箭头(**->**)访问。 5. 在调用window的过程中会遇到许多 结构套结构 的 数据类型,因此在转换为易语言声明时必须严格注意这个问题,否则你的程序将可能出现异常。