考试网 >> IT认证 >> 等级 >> 等级动态 >> 检出和分离c语言源程序错误的方法

检出和分离c语言源程序错误的方法

发布时间:2006-07-25 12:03     点击:
分页:[1] 2  下一页

    我们知道,编译程序可以找到源程序中的语法错误和语义错误,并将其分离出来,但她不能检出程序编制的是否得当及算法是否正确。在c语言源程序调试过程中,比较麻烦的一种错误是程序可以执行,但得不到希望的结果,即使在算法正确的情况下,程序员也要从头到尾的对整个程序检查。找出错误的方法可以从一组检查数据开始,把已知的数据送入程序,并把程序逐步划小,直到找出错误所在并将其分离出来为止。这种方法大都采用在源程序中加入若干printf()语句来实现,通过检查中间结果,就可能把出错的原因找出来。但这种方法过于繁琐复杂,使用不便。本文介绍一种解决这个问题的简单方法,以起抛砖引玉的作用。

首先设计一个排错函数debug(),这里假定编译程序进支持整型,字符型,整型数组和字符型数组类型。如果编译程序还值持其它的数据类型,稍加修改debug()函数即可。Debug()函数如下:

/* function to print ints,chars,and int&char arrays*/

#include<stdio.h>

#include<conio.h>

#define CLEARS 111

void debug(char let,char c_array[],int n_array[],int asize,int num,int opt)

{

int I;

switch(opt)

{

case 1:

printf("The value is %d",num);

break;

case 2:

printf("The letter is %c",let);

break;

case 3: {

puts("The number array contains\n");

for(i=0;i<=asize;++i)

printf("%d",n_array[i]);

break;

}

case 4:{

puts("The character array contains\n");

for(i=0;i<=asize;++i)

printf("%c",c_array[i]);

break;

}

default:

puts("\nInvalid option selected!");

break;

}

puts("\tPlease press any key to continue:");
分页:[1] 2  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有