你这个编译有问题啊
展开全部
关于在使用高级程序设计语言编程的过程中,产生的编译错误是各种各样的。因此你必须要把详细的程序源代码写出来,别人才能够帮助你进行分析。
下面我以 C 语言为例,对程序出错类型进行一个大致的说明。
根据我自己多年进行 C 语言编程的经验,通常 C 语言的错误有如下一些类型,可以供你参考:
(1)、语法错误。这类错误是最容易进行调试的,因为如果程序中有语法错误,那么程序在进行编译时都通不过去(例如:程序中缺少分号、或者是使用了非法的变量名称等);
(2)、指针错误。这类错误是最难于调试的。即:在程序进行编译、链接时,不会产生任何出错信息,但是一旦程序运行,就会出现程序崩溃现象。如下源程序:
#include <stdio.h>
#include <stdlib.h>
void main( )
{
char * p ; /* 定义了一个字符指针变量 p */
p = (char *)malloc(100000)*sizeof(char) ; /* 为变量 p 动态分配内存 */
if( p == NULL ) /* 该段代码绝对不能够省略。必须要判断动态分配内存是否成功,绝对不能够认为系统每次分配内存都一定成功 */
{ /* 若内存分配失败,则退出应用程序 */
printf("Memory allocation failured !\n" ) ;
exit(1) ;
}
gets(p) ; /* 从键盘输入一行数据,并保存到 p 中 */
puts(p) ; /* 在屏幕上显示刚刚输入的数据 */
free(p) ; /* 释放内存 */
}
(3)、其它未知错误。例如:最简单的除法程序。
#include <stdio.h>
void main( )
{
int a, b ;
scanf("%d %d", &a, &b) ;
if( b == 0 ) /* 该段代码不能够省略。两个数做除法时,除数 b 不能够为零。若为零,则退出应用程序 */
{
printf("b can't be zero !\n") ;
exit(1) ;
}
printf(" Result is : %d", a / b ) ; /* 打印 a/b 的商 */
}
你可以根据我的思路,再对你的源代码进行仔细调试。
下面我以 C 语言为例,对程序出错类型进行一个大致的说明。
根据我自己多年进行 C 语言编程的经验,通常 C 语言的错误有如下一些类型,可以供你参考:
(1)、语法错误。这类错误是最容易进行调试的,因为如果程序中有语法错误,那么程序在进行编译时都通不过去(例如:程序中缺少分号、或者是使用了非法的变量名称等);
(2)、指针错误。这类错误是最难于调试的。即:在程序进行编译、链接时,不会产生任何出错信息,但是一旦程序运行,就会出现程序崩溃现象。如下源程序:
#include <stdio.h>
#include <stdlib.h>
void main( )
{
char * p ; /* 定义了一个字符指针变量 p */
p = (char *)malloc(100000)*sizeof(char) ; /* 为变量 p 动态分配内存 */
if( p == NULL ) /* 该段代码绝对不能够省略。必须要判断动态分配内存是否成功,绝对不能够认为系统每次分配内存都一定成功 */
{ /* 若内存分配失败,则退出应用程序 */
printf("Memory allocation failured !\n" ) ;
exit(1) ;
}
gets(p) ; /* 从键盘输入一行数据,并保存到 p 中 */
puts(p) ; /* 在屏幕上显示刚刚输入的数据 */
free(p) ; /* 释放内存 */
}
(3)、其它未知错误。例如:最简单的除法程序。
#include <stdio.h>
void main( )
{
int a, b ;
scanf("%d %d", &a, &b) ;
if( b == 0 ) /* 该段代码不能够省略。两个数做除法时,除数 b 不能够为零。若为零,则退出应用程序 */
{
printf("b can't be zero !\n") ;
exit(1) ;
}
printf(" Result is : %d", a / b ) ; /* 打印 a/b 的商 */
}
你可以根据我的思路,再对你的源代码进行仔细调试。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询