欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 請教C語言中關于遞歸函數的理解問題 [打印本頁]

作者: 1258011    時間: 2019-3-22 22:17
標題: 請教C語言中關于遞歸函數的理解問題
怎么理解這個C語言遞歸函數呢?為什么它的功能是逆序輸出P指向的字符串呢?還有putchar()函數在遞調用自身語句之前或者之后,這有什么區別嗎?


程序如下:
#include <stdio.h>
int fun (char*p)
{
if(*p==0)
return 0;
fun(p+1);
putchar(*p);
return 0;

}
main()
{
char ch[]="ABCD";
fun(ch);

}



作者: wangyueli    時間: 2019-3-23 20:17
因為它所指向的地址+1,先輸出的A往后面排,然后B排前面
作者: 大力水手PP    時間: 2019-3-23 21:05
如果putchar()函數在遞歸調用自身語句之前執行,那會輸出ABCD
如果putchar()函數在遞歸調用自身語句之后執行,那會輸出DCBA

作者: 內向男    時間: 2019-3-24 09:04
同意板凳,輸出在遞歸調用之前是順序打印,,輸出在遞歸調用之后就是逆序打印,返回的時候打印。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1