| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 517 人关注过本帖
标题:求助:栈溢出怎么解决
只看楼主 加入收藏
赤云
Rank: 2
等 级:论坛游民
帖 子:82
专家分:35
注 册:2014-12-29
结帖率:64.71%
收藏
 问题点数:0 回复次数:2 
求助:栈溢出怎么解决
程序代码:
#include <stdio.h>
int LOC;
int recurbinary(int *a,int key,int low,int high){
    int mid,flag=1;
    mid=(low+high)/2;
    if(mid==low+1){
        if(a[low]==key){
            LOC=low;
            return 1;
        }
        flag=0;
    }
    if(mid+1==high){
        if(a[high]==key){
            LOC=high;
            return 1;
        }
        flag=0;
    }
    if(a[mid]==key){
        flag=0;
        LOC=mid;
        return 1;
    }
    if(recurbinary(a,key,low,mid) && flag)
        recurbinary(a,key,mid,high);
}
int main(){
    int a[]={1,8,6,4,2,3,7,5,9};
    recurbinary(a,3,0,8);
    printf("LOC=%d\n",LOC);
    return 0;
}


在执行过程中只出现Press any keys to continue。调试中出现栈溢出。怎么回事?
2015-10-29 08:54
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:0 
if(recurbinary(a,key,low,mid) && flag)修改为if(flag && recurbinary(a,key,low,mid))即可。

能编个毛线衣吗?
2015-10-29 09:07
the_second
Rank: 2
等 级:论坛游民
帖 子:115
专家分:80
注 册:2015-9-13
收藏
得分:0 
为什么换一下就不会溢出了
求解大神
2015-10-29 12:34
快速回复:求助:栈溢出怎么解决
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042321 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved