加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

inno-setup – 如何检查变量是否为整数?

发布时间:2020-12-15 09:19:04 所属栏目:大数据 来源:网络整理
导读:我正在使用Inno Setup并想要检查Pascal脚本,如果字符串变量是一个整数(仅0-9,没有十六进制).我做了这个功能: function IsInt(s: string): boolean;var i,len: Integer;begin len := length(s); if len = 0 then result := false else begin result := true;
我正在使用Inno Setup并想要检查Pascal脚本,如果字符串变量是一个整数(仅0-9,没有十六进制).我做了这个功能:

function IsInt(s: string): boolean;
var
  i,len: Integer;
begin
  len := length(s);

  if len = 0 then
    result := false
  else
  begin
    result := true;
    for i := 1 to len do
    begin
      if not (s[i] in ['0'..'9']) then  !!! ERROR HERE !!!
      begin
        result := false;
        exit;
      end;
    end;
  end;
end;

但是编译器引发了一个错误:

Closing square bracket (']') expected.

怎么解决?

如果我将行更改为:

if not (s[i] in ['0','1','2','3','4','5','6','7','8','9']) then

它符合但如果代码被执行则会出现此错误:

Runtime Error - Invalid Type.

该怎么办?

解决方法

而不是使用集合,您可以只进行简单的范围测试,例如

IF (s[i] < '0') OR (s[i] > '9') THEN
   ...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读