DLLVarGlobalGetDoubles
函数 DLLVarGlobalGetDoubles 从控制器读取 $global[] 全局双精度数组。($global[] 为所有任务共享的双精度变量区。)
C/C++
ErrorCode DLLVarGlobalGetDoubles(INT_PTR hClientHandle, int startIndex, double* outValues, int* inOutCount);
C#
Controller.Variables.Global.Doubles.GetMultiple(start, count) — 批量读取全局 double 数组。
参数
hClientHandle (INT_PTR)
客户端会话句柄,由 DLLSysConnect 获取。
startIndex (int)
读取起始索引(0-indexed)。
outValues (double*)
输出。接收读取的双精度值数组。
inOutCount (int*)
输入输出。调用时传入要读取的元素数量;返回时写入实际读取的元素数量。如请求的起始索引超出数组范围则返回 0。
返回值
返回 ErrorCode;NoError (0) 表示成功,正值为错误码,详见 SDK 发布头 ErrorCode.h。
说明
$global[] 在控制器内存中全局共享,所有任务均可见。可用于任务间数据交换。
示例
double values[4] = {0};
int count = 4;
DLLVarGlobalGetDoubles(handle, 0, values, &count);
for (int i = 0; i < count; i++) printf("Global[%d] = %f\n", i, values[i]);