2つのパラメーターを取得するRECURSIVE関数の記述方法に関するアイデア:最初はアドレスd(charの場所)です。2番目は文字列です。この関数は、文字列sをdから始まる場所にコピーします。関数は結果としてdを返します!strcpyなしでそれを行うことができますか?
copy_r(char *s, char *d)
{
*d = *s;
if(*s)return copy_r(++s, ++d);
}
間違いはどこにありますか?(見つかった)まだ問題があります!場所dがすでにsによって占められている場所と重なっている場合はどうなりますか?
これは例えばstrcpy(p1、 "abcdefghijklomopqrstuvwqyz"); printf(copy_r(p1、p1 + 10));動作しません–
出力はklomopqrstuvwqyzである必要があります