跳转至

DLLVarGlobalGetDoubles

函数 DLLVarGlobalGetDoubles 从控制器读取 $global[] 全局双精度数组。($global[] 为所有任务共享的双精度变量区。)

所属:C/C++ API 函数索引

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。

返回值

返回 ErrorCodeNoError (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]);

相关函数