st语言 hex转int
时间: 2023-09-21 10:08:18 浏览: 128
在ST语言中,可以使用以下代码将一个十六进制字符串转换为整数:
```st
FUNCTION HexToInt(hex : STRING) : INT
VAR
i : INT;
val : INT := 0;
BEGIN
FOR i := 1 TO LEN(hex) DO
IF hex[i] >= '0' AND hex[i] <= '9' THEN
val := val * 16 + INT(hex[i]) - INT('0');
ELSIF hex[i] >= 'A' AND hex[i] <= 'F' THEN
val := val * 16 + INT(hex[i]) - INT('A') + 10;
ELSIF hex[i] >= 'a' AND hex[i] <= 'f' THEN
val := val * 16 + INT(hex[i]) - INT('a') + 10;
END_IF
END_FOR;
RETURN val;
END_FUNCTION
```
使用方法如下:
```st
program Example
VAR
hexStr : STRING := '4D2'; // 十六进制字符串
intValue : INT;
BEGIN
intValue := HexToInt(hexStr);
// 输出转换后的整数
WRITE('转换后的整数是:', intValue);
END_PROGRAM
```
阅读全文