2 custesc CUSTESC 于 2016.02.23 15:49 提问

求大神解答一下!程序编译通过,总是停止运行。

int* qiuyu(int n,int i)
{
int sum;
static int m=2;
sum[i]=n%m;
m
=2;
n-=sum[i];
if(sum[i]==0) /*求n的2次方之和*/
return qiuyu(n,i);
if(n==0)
return sum;
else
return qiuyu(n,++i);

}

int main(void)
{ int m;
int *sum,n=27,i=0;
sum=qiuyu(n,i);
m=sizeof(sum)/sizeof(int);
printf("%d",m);

}

2个回答

ywt923759010
ywt923759010   2016.02.23 17:01

那个sum变量是怎么回事哦

CUSTESC
CUSTESC 我打错了。应该是int *sum
2 年多之前 回复
qq_32565575
qq_32565575   2016.02.23 18:26

int * sum表明sum只能存储整型变量的地址,而题主后面出现sum[i]这里的sum是一个整型常量的地址。好像有点问题。

CUSTESC
CUSTESC 回复CUSTESC: 不是编译器不允许,是系统不允许。
2 年多之前 回复
CUSTESC
CUSTESC 找到问题了!声明*sum后,将sum当作数组首地址,数组越界了。编译器不允许
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C语言里程序编译无误但运行会弹出程序已停止运行是为什么?
C语言里程序编译无误但运行会弹出程序已停止运行是为什么?原文链接(https://zhidao.baidu.com/question/1178139670043658699.html) 摘要 1. 内存溢出 内存溢出(out of memory)通俗理解就是内存不够,程序所需要的内存远远超出了主机内安装的内存所承受大小,就叫内存溢出。系统会提示内存溢出,有时候会自动关闭软
eclipese 编写android应用程序 在模拟器上 显示停止运行
eclipese 编写android应用程序 在模拟器和手机上可以安装成功,但是打开就 显示停止运行‘ logcat显示的是error opening trace file: No such file or director 网上说 这个问题的出现是因为运行的测试机android系统版本和项目api不一致导致 但是我确定我设置是相同的 都是16  小白一个  查了好多 实在搞不清楚了 求指
vs2010+opencv2.4.9运行时候出现问题?求助各位
参考书目是OpenCV3 编程入门 程序是: # include using namespace cv; int main () { VideoCapture capture("1.avi"); while (1) { Mat frame; capture>>frame; imshow("reading video", frame); waitKey(60000);
我用dev-c++编译的C程序,为什么程序一运行就自动关闭
有3种简单方法:自己加上程序语句1.加头文件#include 然后在最后加system("pause");2.加头文件#include 最后加一句getch();3.在最后加getchar();
eclipse老运行上一个程序之原因总结
运行eclipse有的时候不运行刚写的类,老是运行别的以前的类,删除了以前的类就啥都不运行。找了好久的原因,最后发现,刚写的类没有main()或者有误。这和java的特点有关,程序的运行总是main()方法作为开始,那么既然现在的类不定义main(),就可以视作一个功能类,入口在原来的类,当然要从原来的程序开始运行啦。 改进方法就是寻找下刚写的类main()有没有误,或者整个程序有没有误。改过之
Latex.exe 已停止工作 underfull \hobx (badness 10000) has occurred while \output is activeBuffer size exc
用latex进行编译时报出如下错误: Latex.exe 已停止工作 underfull \hobx (badness 10000) has occurred while \output is activeBuffer size exceeded!
麻烦各位大神看看我用codeblocks写的C,为什么会停止运行!!!!
#include <stdio.h>#include <stdlib.h>    /*某公司为员工提供了基本工资、物价津贴及房租津贴。    其中物价津贴占基本工资的40%,房租津贴占基本工资的20%。    编写一个程序计算实领工资,要求输入某员工的基本工资,    计算应向员工支付的实际工资。                   */    //实现思路    /*物价...
C++程序编译运行后窗口一闪而过问题
问题:刚开始学习C++写win32 console application 程序的时候使用不同的编译器结果显示的那个窗口可能闪一下就消失了。      解决办法:有的编译器很好,在示例程序中给出了类似的解决办法,如在devC++下,新建一个非空的C++类的时候,在return 0;之前会有这么一句:system("PAUSE");在visual studio中如果你按照步骤来的话不会出现一闪
VS编译器程序运行窗口一闪而过?教你一招!
在使用windows上的VS编译器时,我们可能会遇到这样一个问题:就是,当我们运行程序时,程序的运行结果窗口老是“一闪而过”。这对于我们来说是及其不爽的! 今天就来解决一下这个问题: 首先,打开编译器,找到“调试”一栏。如图: 点击“调试”,找到当前解决方案资源管理器的“”属性“”,如图所示: 当然也可以直接选择界面左侧的“解决方案资源管理器”,鼠标右键,如图: 总之,以上两...
64位机子,vs2010配置opencv2.4.9遇到问题解决
最近换了64位的主机,准备把之前做过的程序都整理一下,然后之前