GET_CHAR读取字符串中指定位置的字符值
此函数获取sString的8位字符值,iPosition表示字符在字符串中的位置,其中1表示字符串的第一个字符。
结果的低位字节包含字节值,结果的高位字节用零填充。

输入
从其获取字符的字符串
获取的字符的位置,必须大于等于1,其中1表示字符串的第一个字符。
输出
结果字节值,其中高位字节用零填充。
请检查输入数据的有效性,因为Control FPWIN Pro7不检查要访问的数据的有效性。
请检查指定的位置是否超过最大字符数或大于当前字符数。
为获得出色性能,请尽可能使用恒定输入值!
反转指令: SET_CHAR

所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。

VAR
bStart: BOOL:=FALSE;
sInputString: STRING[32]:='ABCDabcd';
wCharvalue: WORD:=16#61;
END_VAR
当变量bStart设置为TRUE时,执行此函数。

BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_CONTACT,,bStart,3,1,5,3,);
B(B_F,E_GET_CHAR!,,14,0,21,5,,?DEN?DsString?DiPosition?AENO?C);
B(B_VARIN,,sInputString,12,2,14,4,);
B(B_VAROUT,,wCharvalue,21,2,23,4,);
B(B_VARIN,,2,12,3,14,5,);
L(1,0,1,5);
L(1,2,3,2);
L(5,2,14,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (bSTart) then
wCharvalue:=GET_CHAR(sInputString, 2);
end_if;