Pascal:用递归反转字符串

Pascal : inverting a string with recursion

我正在尝试学习 Pascal 中的递归,我有这段代码可以用递归反转字符串:

Function Invert (ch:string) : string;

    begin
     if ch='' then
     Invert:=''
     else

     Invert:=copy(ch,length(ch),1)+Invert(copy(ch,1,length(ch)-1));
    end;

任何人都可以逐步向我解释这里发生了什么。 谢谢。

如果字符串为空,则其反转就是空字符串;否则,反转是最后一个字符后跟(字符串减去它的最后一个字符)的反转。

幸运的是,您有一个可以反转字符串的函数:Invert