如何判断一个变量的数据类型?急急急!!!在线等!!!

解决方案 »

  1.   

    function GetVariantType(varVar: Variant):String;
    var basicType: integer;
        TypeString : string;
    begin
      basicType:=VarType(varVar) and VarTypeMask;
      case basicType of
        varEmpty : typeString := 'varEmpty';
        varNull: typeString := 'varNull';
        varSmallInt: typeString := 'varSmallInt';
        varInteger : typeString := 'varInteger';
        varSingle: typeString := 'varSingle';
        varDouble: typeString := 'varDouble';
        varCurrency: typeString := 'varCurrency';
        varDate: typeString := 'varDate';
        varOleStr: typeString := 'varOleStr';
        varDispatch: typeString := 'varDispatch';
        varError : typeString := 'varError';
        varBoolean : typeString := 'varBoolean';
        varVariant : typeString := 'varVariant';
        varUnknown : typeString := 'varUnknown';
        varByte: typeString := 'varByte';
        varWord: typeString := 'varWord';
        varLongWord: typeString := 'varLongWord';
        varInt64 : typeString := 'varInt64';
        varStrArg: typeString := 'varStrArg';
        varString: typeString := 'varString';
        varAny : typeString := 'varAny';
        varTypeMask: typeString := 'varTypeMask';
      end;
      result:=TypeString;
    end;
    procedure TForm1.Button1Click(Sender: TObject);
    var myVar:Variant;
    begin
      myVar:='abcd';
      ShowMessage(GetVariantType(myVar));
    end;
      

  2.   

    变量声明一般都在函数定义的begin和end之间