普京白了安倍:Turbo Pascal的编译问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 06:14:11
我在Turbo Pascal7中进行如下定义
var
m:integer;
a:array [1..m] of 0..1;
但是在编译的过程中,系统提示“Error133.Cannot evaluate this expression”,光标在m后的]处闪动
请教高手这是为什么,我认为Pascal语言应该允许以上的定义

pascal是不允许这种定义的,变量定义时不能包含别的变量,
但可以包含常量,如:

const
m=100;
var
a:array[1..m] of 0..1;

是允许的。

确实是这样的,tp中是不能开动态数组的。

但在delphi里可以,直接使用

a: array of 0..1

来定义。

因为m是变量
pascal数组定义中下标只能是常量