为什么编程好按编译没用
① 程序无法编译通过问题,怎么解决
关于程序无法通过编译的问题,其错误类型肯定是有很多种的。根据我多年的编程调试经验,可以给你提供以下几种类型的错误,供你参考(以下以 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)、其它的错误类型例如:数组越界、非法使用了未初始化的指针变量、未对指针变量进行有效的内存分配,就向那一块存储区域读写数据,等等。这些都会造成程序崩溃,严重的就会造成操作系统崩溃。
② 用keil编程,没错误,没警告,就是编译不了,这是什么情况啊怎么解决
有两个警告呀,先把两个警告搞掉再想其它的,不要把问题复杂化,一般情况下很难搞出一个“系统工程师”没有想到的问题出来。我平时编程时每一次都要让它0错误0警告才进行下一步编写,有的时候我知道只是定义了一个变量没有使用它,我也先把它注释掉,用的时候再把它放出来。不过你的编译系统不是买的这也是事实。
③ 我的易语言为什么不能编程啊,一按编译,就出个框“很抱歉,本易语言版本类型不支持编译程序及制作安装”
你那是没注册的正版易语言程序,不经过花钱注册是不能编译成exe文件的。如果要用正版的,要好多钱。最简便的办法就是在网络上搜“易语言破解版”安装后就行了。这样就能免费编译exe程序了。记得给我加分啊
④ c语言编程的程序为什么无法运行,一直提示源文件未编译
你是不是粘贴了网页上的代码,那个可能有很多符号的。还有保证在英文状态下输入啊。未编译是肯定的啊,你都有语法错误啊。
