本文目录一览:
c语言出现了一个问题,导致程序停止正常工作,请关闭程序
1、野指针,你使用的指针指向未知区域
2、scanf函数输入整形、字符……的时候缺少了
3、缓冲区溢出,也就是说你使用数组时不经意间越界了
c语言错误怎么办?
如果发生错误的文件是由其他的C代码文件添加进入当前工程而引起的,则Alt+F7进入当前工程的 Settings,选择C/C++选项卡,从Category组合框中选中Precompiled Headers,选择Not Using Precompiled headers。确定即可。
c语言错误的原因:
1 、编译阶段,执行的是对单个文件的转换,从源代码转换成二进制文件。
2 、链接阶段,将每个源文件转成的二进制文件,及相关的系统库文件共同打包生成可执行文件。
3 、从定义上可以看出,链接阶段,出现错误有两种可能: 函数中引用了不存在的函数;编译环境有问题,导致ld出错。
文件中C语言出现错误,该如何解决?
C语言中大部分错误是语法错误,语法总结如下。
对于新手来说,最开始犯的错误就是容易忘记写Main函数头。不管是C 还是java都是不能缺少的,一切语言从main开始。下面报错会提示你找不到头。
然后就是 “ ; ” 号了,虽然很不起眼但是却很重要,缺少了就不可以。不仅仅是缺少了不行就是你输入的是中文状态下的分号依然不可以,C语言对中文还是很敏感的。
再就是大括号的封闭问题了,很多同学刚刚写程序的时候往往只写上一半大括号,把下一半大括号忘记了。
有的程序要求需要输出东西,这时候你却把printf语句忘写了,这是一种大意,这个失误,编译软件不会给你报错。
附上一张运行正确的图,做个参照。
C语言运行结果有问题,程序无错误
#include stdio.h
#include math.h
void main(){ double a,b,c,p,q,x,x1,x2;
scanf("%lf,%lf,%lf",a,b,c); //按原先设计需要输入: a=1,b=2,c=1,否则赋值有问题
x=b*b-4*a*c;p=-b/(2*a);q=sqrt(x)/(2*a);x1=p+q;x2=p-q;
printf("p=%5.2lf,q=%5.2lf\n",p,q); //如同scanf这里也需要用%lf
printf("x1=%5.2lf,x2=%5.2lf\n",x1,x2);
}