易码技术论坛

 找回密码
 加入易码
搜索
查看: 251987|回复: 5

[非常郁闷][关于LavaXIde的错误检测]

[复制链接]
发表于 2006-10-15 23:06:01 | 显示全部楼层
在debug状态运行程序,出错了会报行号
 楼主| 发表于 2006-10-16 14:30:34 | 显示全部楼层
但是那已经错过了错误出现的位置,报告的行里只有:getchar();
我还是慢慢找吧~~~
发表于 2006-10-16 14:43:29 | 显示全部楼层
在出错行的附近找
发表于 2006-10-22 13:56:23 | 显示全部楼层
就是就是,我以前也遇到过这样的问题;
以下操作可能会出现错误读写地址:
1、向文件里写非字符串变量(数组除外),
如:
int sa;
sa=3210;
fwrite(sa,1,2,fp);;

2、TextOut非字符串(或变量),
如:
int sa;
sa=3210;
TextOut(1,1,sa,0x81);;

3、下标变量的下标值小于0,
如:
a=3-7;
p[a]=48;;

4、指针操作出错,
如:
char a[7]="文曲星";
void main()
{
long add;
add=&a;//取地址,
printf("%s",*add);//取地址中的数据
}
(这个程序为什么会出错我不知道,因为在TC里能通过!郁闷中。。。。LEE解释一下!)

。。。。。。
我现在只想到这些了!
要不你把错误行(+-10行共41行的代码)全部帖出来,提示的错误行用红色,我们可以帮你找一下!
发表于 2006-10-22 14:26:16 | 显示全部楼层
在LavaX里,*x是取x地址的一个字节,所以*x必然>=0而<256,所以是非法地址
 楼主| 发表于 2006-10-15 22:57:20 | 显示全部楼层 |阅读模式
  LavaXIde因为只检测一般的表达式,所以出现在条件里的表达式即便是读写地址错误也不会报错,万一在非一般表达式的地方出错,往死了找啊!!!
我今天编程序又遇到"错误的读写地址0",崩溃了!
我已经找了一晚上也不知道为什么,更不知道哪错了,更不爽的是把一个正常的函数去掉,读写地址就不错误了,问题千奇百怪~~~~有人知道找错误的更好的方法么?
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-5-9 05:46 , Processed in 0.008527 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表