回 帖 发 新 帖 刷新版面

主题:大家帮我看看free pascal中的子界问题

var a:1..5;
begin
a:=8;
writeln(a);
end.

请问为什么系统没有提示编译错误呀,明明a的取值范围是[1,5]呀,而现在a被赋值为8这不是越界了吗?奇怪难道free pascal跟turbo pascal不一样吗?

回复列表 (共4个回复)

沙发

确实不会提示编译错误,只是运行时会出错而已。



PS: 我还活着......

板凳

在FreePascal2.2中已经修正了这个漏洞,直接不能编译成功了


PS:FreePascal2.2已在官方网站发布,可以下载了

3 楼


不过我运行了,也没有提示错误

4 楼


是版本的问题,道是有可能,等我试试看,谢谢各位

我来回复

您尚未登录,请登录后再回复。点此登录或注册