GET_CHAR

读取字符串中指定位置的字符值

此函数获取sString的8位字符值,iPosition表示字符在字符串中的位置,其中1表示字符串的第一个字符。

结果的低位字节包含字节值,结果的高位字节用零填充。

输入

sString (STRING)

从其获取字符的字符串

iPosition (INT, DINT, UINT, UDINT)

获取的字符的位置,必须大于等于1,其中1表示字符串的第一个字符。

输出

Unnamed output (WORD, DWORD)

结果字节值,其中高位字节用零填充。

标注

  • 请检查输入数据的有效性,因为Control FPWIN Pro7不检查要访问的数据的有效性。

  • 请检查指定的位置是否超过最大字符数或大于当前字符数。

注释

为获得出色性能,请尽可能使用恒定输入值!

示例

POU头

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

	VAR
		bStart: BOOL:=FALSE;
		sInputString: STRING[32]:='ABCDabcd';
		wCharvalue: WORD:=16#61;
	END_VAR

LD本体

当变量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

ST本体

if (bSTart) then
	wCharvalue:=GET_CHAR(sInputString, 2);
end_if;

最后更新日期: 2025-06-24此页面上的反馈松下热线