cc -V
gcc -v
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<inttypes.h>
int main()
{
FILE *fpin,*fpout;
char ch[11], file_name[100];
long long int num1=0,i,tmp=0;
long long int *arr;
printf("enter file name:: ");
gets(file_name);
fpin = fopen(file_name,"r");
fpout = fopen("/home/code/output.c","w");
while(1)
{
fgets(ch,11,fpin);
if (!feof(fpin))
{
num1=atoll(ch);
arr = prime_number(num1);
for(i=0;*(arr+i)!='\0';i++)
{
fprintf(fpout,"%llu",*(arr+i));
if(*(arr+i+1) == '\0')
fputc('.',fpout);
else
fputc(',',fpout);
}
}
else
{
fclose(fpin);
fclose(fpout);
break;
}
}
}
prime_number(long long int n)
{
long long int i,j,total=0,a[200];
int count=0;
printf("\n%llu \n",n);
for (j=2;j<=n;j++)
{
count = 0;
for (i=1;i<=j;i++)
{`enter code here`
if ((j%i) == 0)
count++;
if (count > 2)
break;
}
if (count==2)
{
a[total] = j;
total++;
}
}
return(&a[0]);
}
在prime_number函数的末尾,您将返回一个指向变量的指针,该变量是在prime_number函数本身(堆栈)中定义的。因为当函数存在时,它的堆栈的内容被有效地蒸发了,所以您返回的是一个无效的指针。
当然,根据您运行的系统、操作系统等,堆栈的内容可能没有被立即覆盖,并且在短时间内看起来是有效的,但这只是运气。
尝试对返回结果进行错误定位(并与调用方释放),或者将数组传递给prime_number函数。这样,内容对调用方仍然有效。
问题内容: 我必须为Java类简介创建一个项目,并在最终解决语法错误之后,单击播放或保存按钮时,该程序出现运行时错误。 每当我单击播放按钮开始播放文件中的音乐时,都会出现此错误: 当我单击保存按钮时,出现此错误: 谁能告诉我什么地方出了问题或如何解决?任何帮助,将不胜感激,我在这个东西上有点慢:) 问题答案: 对于播放按钮错误:通过计数行(75-> 86),我推断出该语句中的错误 这是因为表(字段
用编译后,我尝试用java运行,它运行了,但随后抛出了一个
我正在写一个程序,显示如下所示的航班信息: 我的问题是使用方法时: 当正常运行时,由于某种原因它不会执行,但是当我使用调试器执行程序时,一切都执行得很好,我得到了一个有意义的输出(格式不是很好,但我可以使用),为什么会发生这种情况? 输出应该是这样的: 当我正常运行时,我会得到这个: 这是当我一步虽然(或运行调试): 我希望输出的是单步执行部分(稍后我将处理格式化) eddit:我已经在错误流中添
我过去经常用这样的命令运行程序: 然后我可以用我的Ubuntu系统的显示器运行wireshark。就像这个页面的例子:用docker运行GUI应用程序 现在它不工作了。当我运行wireshark时,我得到这个错误:
我已经重新安装了jdk并将其添加到路径变量中,但现在在运行程序时,它向我显示“启动错误”。我如何解决它??
我正在使用一个在线编译器来运行这个简单的代码,但是它给出了一个运行时错误,“Could not find or load class main”没有其他语法错误。请提出解决方案。