编程论坛 » Delphi论坛 » [求助]pascal中子界类型问题
新手上路
最近在学习pascal ,看到子界章篇。测试了个程序,有点疑问。测试程序:program p16;type a=1..10;var t:a;beginreadln(t);writeln('t=',t);end.程序运后我输入20,输出为t=20;我的疑问是:20超出1..10的界限了,为什么不会报错?
搜索更多相关主题的帖子: 中子 pascal 类型 疑问
查看详细资料
TOP
论坛元老
但是在下面这个测试程序中它会判断界限的问题:program p17;type a=1..10;var b:a;beginb:=20;end.编译时,出现错误提示:Error 76:constant out of range.
版主
子界多是用在静态的程序越界中。对于静态的程序越界,是可以判断的。对于动态的,Delphi是按照基本类型越界来判断的。而不是按照子界类型来判断的!
查看个人网站