有關如何編寫獲取2個參數的RECURSIVE函數的任何想法: 首先是地址d(char的位置)。 秒是一個字符串。 該函數將字符串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
是的,它可以在不'strcpy'來完成,它可以遞歸地完成。 –
這與問「可以在C中實現'strcpy()」是否一樣?「,當然答案是肯定的。 – unwind
當然,它可以做...有*你*還嘗試過任何東西嗎? – Mike