【问题标题】:How to Extract real part & Imaginary part from a String entry in the Pascal TextEdit GUI?如何从 Pascal TextEdit GUI 中的字符串条目中提取实部和虚部?
【发布时间】:2018-11-06 13:03:17
【问题描述】:

我正在尝试使用 Delphi Pascal 创建一个复数计算器。第一部分是提取字符串条目,通过在“i”上插入分隔符来分隔实部和虚部。例如:数字条目可以是:7+2i 或任何其他组合。这是我的方法:

TForm2.btnExtractClick(Sender: TObject);
var sCode, pic: string;
    sConst: integer;
     im,re: integer;
    iConst: string;
    j,k, delimiterPos: integer;
 begin
 memDisplay.Clear;
 sCode := Edit1.Text;
 sConst := Pos (sCode, 'i');
 im := StrToInt(Copy(sCode, sConst - 1));
 Delete(sCode, sConstant - 1, im);
 re := StrToInt(sCode);

但我收到以下错误:

【问题讨论】:

    标签: delphi delphi-2009


    【解决方案1】:

    您搜索的子字符串应该是Pos 的第一个参数。

    替换

    Pos(sCode, 'i')
    

    Pos('i', sCode)
    

    这里记录了这个函数:http://docwiki.embarcadero.com/Libraries/en/System.Pos

    您的代码还有许多其他问题,但这回答了这里提出的主要问题,即为什么Pos 返回0。我不会尝试调试您的其余代码,尤其是因为这不是您的真实代码,因为它包含编译错误。

    要解决代码中的后续问题,您必须学会使用调试器。单步执行代码并在每行代码执行后检查每个局部变量的值。将您在调试器下看到的值与您根据基于论文的静态分析预期看到的值进行比较。

    【讨论】:

    • 我想不通。我想知道是否有其他方法可以分离数字、字符串和算术运算符并将它们分配给变量
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 2020-02-05
    • 1970-01-01
    相关资源
    最近更新 更多