热搜:NVER node 开发 php

菜鸡求教

2024-08-14 10:40:01
菜鸡求教

代码如下

<?phpfunction Contrast($arr,$r,$c,&$numb){	if($arr[$r][$c]==$arr[$r][$c+1]){		$c++;		$numb++;				Contrast($arr,$r,$c,$numb);			}else{	  	  echo $numb."
"; return $numb; }}$arr=array(array(0,0,0,1,1,1,1,1,1,0,0,));$r=0;$c=3;$numb=0;$d=Contrast($arr,$r,$c,$numb);var_dump($d);?>


输出是
为什么函数没有返回值啊?


回复讨论(解决方案)

第6行 加上return :return Contrast($arr,$r,$c,$numb);

??分支的???有返回值

    if($arr[$r][$c]==$arr[$r][$c+1]){        $c++;        $numb++;               Contrast($arr,$r,$c,$numb);           }else{ 


改?:
<?phpfunction Contrast($arr,$r,$c,&$numb){    if($arr[$r][$c]==$arr[$r][$c+1]){        $c++;        $numb++;               return Contrast($arr,$r,$c,$numb);           }else{            echo $numb."
"; return $numb; }} $arr=array(array(0,0,0,1,1,1,1,1,1,0,0,));$r=0;$c=3;$numb=0;$d=Contrast($arr,$r,$c,$numb);var_dump($d);?>


5
int(5)

谢谢各位大神 已经想明白了!~~~~