㈠ C语言编程时出现的那个expected怎么理解啊
C语言编程时编译失败后提示"expected"说明代码缺乏必要内容导致语法错误。
expected表示预期,期望。在C语言编译失败后的提示信息中出现时表示编译器无法通过编译,且根据其错误给出合理的建议。
此处可以发现编译器提示在花括号 '{' 前缺乏某些符号,可以帮助我们修改源代码,但需要注意的是编译器的判断可能出错,该提示信息仅代表源代码中存在错误即可能原因!目前暂时无法准确标注出出错位置。
C语言程序开发流程如下:
(1)如何判断是否可以通过编译扩展阅读
C语言出现的错误大致上可以分为两种,一种是语法错误,另一种是逻辑错误。
大部分语法错误将无法通过编译器编译,编译器会报错并给出提示,设计程序时可以根据编译器给出的提示检查源代码是否符合C语言的标准。
需要注意的是,不同版本的编译器支持的标准可能存在差异,特别在移植代码的过程中需要注意。
逻辑错误相对较难排除,主要是程序设计时由于逻辑不够严谨导致的程序运行错误或无法正常运行。排除逻辑错误需要进行调试,检查程序运行过程数据的变化和堆栈的变化,直到发现问题并解决问题。
㈡ C语言怎么检查对错
用微软的VC6.0就可以,点编译,就是那个小叹号,如果是语法错误,就会提示你错误,在下面的框里提示你哪行错误,编译不会通过,即你的程序无法运行。
然而这是很简单的,最难的是逻辑错误,即编译可以通过,而运行结果是错误的,和你预想的不一样,而这种错误很难查找,只能用分步式运行,一行一行跟着程序执行看结果和过程,才能检测出来。通常程序员最难解决的错误就是这种逻辑错误。
㈢ gcc编译,不提示错误信息,只告诉我编译是否通过,怎么设置
你可以把gcc的输出重定向到nul,然后判断gcc的退出状态。一般来说,0表示编译成功,1表示失败了。
完成这一系列的工作,建议你可以使用脚本。
㈣ c语言为什么编译不通过
需要贴一下代码,
编译不通过一般的几个问题需要去排查:
1)编译环境是否正确?
可以简单的写个main函数测试下,如果能正常返回,说明编译环境ok
2)语法错误
编译器如果能帮你定位,那就去找对应错误的上下文,如果没有,就需要一步一步排查,看哪里的代码有问题了。
㈤ 能正确通过编译的程序一定是正确的程序吗
不一定啊。而且大部分程序都是要反复调试才能正确。
编译过的程序只是编译器能够识别,没有语法错误。
㈥ 程序无法编译通过问题,怎么解决
关于程序无法通过编译的问题,其错误类型肯定是有很多种的。根据我多年的编程调试经验,可以给你提供以下几种类型的错误,供你参考(以下以 C 语言编程经验为例,其他编程语言的调试思路也是同理的)。
其中最容易调试的程序错误类型就是:
(1)、在编写源程序过程中出现的各种语法错误。这种错误主要是由于刚刚开始学习编程,对编程语言的语句、以及语法结构还不是很清晰造成的,这种错误是最容易进行调试的,因为语法错误,编译器连编译都无法通过(通常会显示出来具体是哪一行出现错误),这样的话,你就可以直接到出错的那一行进行修改源代码了;
(2)、若是经过一段时间的上机练习,对学习编程的初始阶段已经较为熟练了、且语法错误较少了之后,之后就会遇到更加复杂、并且难于调试的语义错误。例如在 C 语言中,对于如下代码:
void main( )
{
int n ;
scanf("%d", &n) ;
if( n == 100 )
printf(" n is 100 !\n") ;
else
printf(" n is not 100 !\n") ;
}
但是若在逻辑判断语句:if( n == 100) 中,如果误将“==”(逻辑等于)写成了“=”(赋值等于),那么在 scanf("%d", &n) 语句中,无论你输入的 n 等于多少,一旦执行 if 语句,那么 将 100 这个数字赋给变量 n,则该逻辑表达式的值总是 1,程序的运行结果必定总是输出:n is 100。
而该程序的实际思路是:从键盘输入一个整数,如果该整数等于 100,则输出:n is 100 !如果输入的整数不等于 100 的话,则输出:n is not 100 !
像这样的逻辑错误(在对 C 语言源程序进行编译时,C 语言编译器是检查不出来的),如果没有丰富的程序调试经验,程序调试起来就是非常困难的。
(3)、其它的错误类型例如:数组越界、非法使用了未初始化的指针变量、未对指针变量进行有效的内存分配,就向那一块存储区域读写数据,等等。这些都会造成程序崩溃,严重的就会造成操作系统崩溃。