急!!free pascal 运行错误位置??

2025-01-04 07:01:00
推荐回答(5个)
回答1:

Free Pascal错误一览表
1、 Run Time Errors 运行错误
(A) DOS 错误代码:
1:无效DoS功能号
2:文件末找到
3:路径未找到
4:打开文件过多
5:禁止文件存取
6:无效文件句柄
12:无效文件存取代码
15:无效驱动器号
16:不能删除当前日录
17:不能跨驱动器改文件名
(B) I/O错误
100:磁盘读错误
101:磁盘写错误
102:文件变量末赋值
103:文件未打开
104:文件未用输入方式打开
105:文件末用输出方式打开
106:无效数字格式
(C) 严重错误
150:磁盘写保护
15l:未知单元
152:驱动器未准备好
153:未知命令
154:数据CRC校验错
155:驱动器请求的结构长度错
156:磁盘定位错
157:未知媒介类型
158:扇区末找到
159:打印机缺纸
160:设备写失败
161:设备读失败
162:硬件故障
(D) 致命错误
200:被零除
20l:范围检查错
202:堆栈溢出错
203:堆溢出错
204:无效指针操作
205:浮点上溢出
206:浮点下溢出
207:无效浮点运算
208:未安装覆盖管理程序
209:覆盖文件读错
210:对象未初始化
2ll:调用抽象方法
212:流登计错
213:集合下标越界
214:集合溢出
215:算术上溢错误
216:存取非法
217:控制-C
218:授权指令
219:无效的 TYPECAST
220:无效的变体TYPECAST
221:无效的变体操作
222:没有变体方法调用DISPATCHER
223:不能建立变体数组
224:变体不包含数组
225:变体数组边界错误
226:TLS初始化错误

2、 编译错误对照表
下面列出在编译程序时可能出现的错误,在集成环境下,Pascal将自动加载源程序并定位于出错处。
1:内存溢出
2:缺标识符
3:标识符未定义
4:标识符重定义
5:语法错误
6:实型常量错
7:整型常量错
8:字符串常量跨行
9:文件嵌套过多
10:非正常文件结束
11:行过长
12:缺类型标识符
13:打开文件过多
14:无效文件名
15:文件未找到
16:磁盘满
17:无效编译指示
18:文件过多
19:指针定义中未定义类型
20:缺变量标识符
21:类型错误
22:结构过长
24:文件分量不能为文件
25:无效字符串长度
26:类型不匹配
27:无效子界基类型
28:下界大于上界
29:缺有序类型
30:缺整型常数
31:缺常数
32:缺整型或实型常数
33:缺指针类型标识符
34:无效的函数结果类型
35:缺标号标识符
36:缺BEGIN
37:缺END
38:缺整型表达式
39:缺有序表达式
40:缺布尔表达式
41:操作数类型与操作符不匹配
42:表达式错
43:非法赋值
44:缺字段标识符
45:目标文件过长
46:未定义外部标识符
47:无效*.OBJ文件记录
48:代码段过长
49:数据段过长
50:缺DO
51:无效PUBLIC定义
52:无效EXTRN定义
53:EXTRN定义过多
54:缺0F
55:缺 INTERFACE
56:无效重定位引用
57:缺THEN
58:缺T0或DOWNTO
59:未定义的向前引用
60:过程过多
61:无效类型转换
62:被零除D
63:无效文件类型
64:不能读写该类型的变量
65:缺指针变量
66:缺字符串变量
67:缺字符串表达式
68:单元循环引用
69:单元名不匹配
70:单元版本不匹配
71:单元重名
72:单元文件格式错误
73:缺IMPLEMENTATl0N
74:常数与CASE类型不相匹配
75:缺记录变量
76:常数越界
77:缺文件变量
78:缺指针变量
79:缺整型或实型表达式
80:标号不在当前块中
81:标号已定义
82:标号未定义
83:无效参数
84:缺UNIT
85:缺“;”
86:缺“:”
87:缺“,”
88:缺“(”
89:缺“)”
90:缺“=”
91:缺“:=”
92:缺“[”或“(.”
93:缺“]”或“.)”
94:缺“.”
96:变量过多
97:无效FOR控制变量
98:缺整型变量
99:此处不允许用文件和
100:字符串长度不匹配
101:无效字顺序
102:缺字符串常数
103:缺整型或实型变量
104:缺有序变量
105:INLINE错
106:缺字符表达式
107:重定位项过多
112:CASE 常量越界
113:语句错
114:不能调用中断过程
116:必须在8087方式下编译
117:末找到目标地址
118:此处不允许包含文件
120:缺NIL
121:无效限定符
122:无效变量引用
123:符号过多
124:语句部分过长
126:文件必须为变量参数
127:条件符号过多
128:条件指令错位
130:初始条件定义错
13l:过程和函数头与前面定义的不匹酉
132:严重磁盘错误
133:不能计算该表达式
134:表达式错误结束
l35:无效格式说明符
136:无效间接引用
137:此处不允许结构变量
138:无SYSTEM单元不能计算
l39:不能存取该符号
140:无效浮点运算
141:不能将覆盖编译至内存
142:缺过程和函数变量
143:无效过程或函数引用
144:不能覆盖该单元
147:缺对象类型
148:不允许局部对象类型
149:缺VIRTUAL
150:缺方法标识符
151:不允许虚拟构造方法
152:缺构造方法标识符
153:缺释放方法标识符
154:FAIL只允许在构造方法内使用
155:无效的操作符和操作数组合
156:缺内存引用
l57:不能加减可重定位符号
158:无效寄存器组合
159:未激活286/287指令
160:无效符号引用
161:代码生成错
162:缺ASM
314: 程序未运行完而被手动或系统强行中止。。。

回答2:

DOS 错误代码:
1无效DoS功能号
2文件未找到
3路径未找到
4打开文件过多
5禁止文件存取
6无效文件句柄
12无效文件存取代码
15无效驱动器号
16不能删除当前日录
17不能跨驱动器改文件名

I/O错误
100磁盘读错误
101磁盘写错误
102文件变量末赋值
103文件未打开
104文件未用输入方式打开
105文件末用输出方式打开
106无效数字格式

严重错误
150磁盘写保护
15l未知单元
152驱动器未准备好
153未知命令
154数据CRC校验错
155驱动器请求的结构长度错
156磁盘定位错
157未知媒介类型
158扇区末找到
159打印机缺纸
160设备写失败
161设备读失败
162硬件故障

致命错误
200被零除
20l范围检查错
202堆栈溢出错
203堆溢出错
204无效指针操作
205浮点上溢出
206浮点下溢出
207无效浮点运算
208未安装覆盖管理程序
209覆盖文件读错
210对象未初始化
2ll调用抽象方法
212流登计错
213集合下标越界
214集合溢出
215 算术上溢错误
216 存取非法
217 控制-C
218 授权指令
219 无效的TYPECAST
220 无效的变体TYPECAST
221 无效的变体操作
222 没有变体方法调用DISPATCHER
223 不能建立变体数组
224 变体不包含数组
225 变体数组边界错误
226 TLS初始化错误

下面列出在编译程序时可能出现的错误,在集成环境下,Turbo/Free Pascal将自动加载源程序并定位于出错处。
l内存溢出
2缺标识符
3标识符未定义
4标识符重定义
5语法错误
6实型常量错
7整型常量错
8字符串常量跨行
9文件嵌套过多
10非正常文件结束
11行过长
12缺类型标识符
13打开文件过多
14无效文件名
15文件未找到
16磁盘满
17无效编译指示
18文件过多
19指针定义中未定义类型
20缺变量标识符
21类型错误
22结构过长
24文件分量不能为文件
25无效字符串长度
26类型不匹配
27无效子界基类型
28下界大于上界
29缺有序类型
30缺整型常数
31缺常数
32缺整型或实型常数
33缺指针类型标识符
34无效的函数结果类型
35缺标号标识符
36缺BEGIN
37缺END
38缺整型表达式
39缺有序表达式
40缺布尔表达式
41操作数类型与操作符不匹配
42表达式错
43非法赋值
44缺字段标识符
45目标文件过长
46未定义外部标识符
47无效*.OBJ文件记录
48代码段过长
49数据段过长
50缺DO
51无效PUBLIC定义
52无效EXTRN定义
53EXTRN定义过多
54缺0F
55缺INTERFACE
56无效重定位引用
57缺THEN
58缺T0或DOWNTO
59未定义的向前引用
60过程过多
61无效类型转换
62被零除D
63无效文件类型
64不能读写该类型的变量
65缺指针变量
66缺字符串变量
67缺字符串表达式
68单元循环引用
69单元名不匹配
70单元版本不匹配
71单元重名
72单元文件格式错误
73缺IMPLEMENTATl0N
74常数与CASE类型不相匹配
75缺记录变量
76常数越界
77缺文件变量
78缺指针变量
79缺整型或实型表达式
80标号不在当前块中
81标号已定义
82标号未定义
83无效参数
84缺UNIT
85缺“;”
86缺“:”
87缺“,”
88缺“(”
89缺“)”
90缺“=”
91缺“:=”
92缺“[”或“(.”
93缺“]”或“.)”
94缺“.”
96变量过多
97无效FOR控制变量
98缺整型变量
99此处不允许用文件和
100字符串长度不匹配
101无效字顺序
102缺字符串常数
103缺整型或实型变量
104缺有序变量
105INLINE错
106缺字符表达式
107重定位项过多
112CASE常量越界
113语句错
114不能调用中断过程
116必须在8087方式下编译
117末找到目标地址
118此处不允许包含文件
120缺NIL
121无效限定符
122无效变量引用
123符号过多
124语句部分过长
126文件必须为变量参数
127条件符号过多
128条件指令错位
130初始条件定义错
13l过程和函数头与前面定义的不匹酉
132严重磁盘错误
133不能计算该表达式
134表达式错误结束
l35无效格式说明符
136无效间接引用
137此处不允许结构变量
138无SYSTEM单元不能计算
l39不能存取该符号
140无效浮点运算
141不能将覆盖编译至内存
142缺过程和函数变量
143无效过程或函数引用
144不能覆盖该单元
147缺对象类型
148不允许局部对象类型
149缺VIRTUAL
150缺方法标识符
151不允许虚拟构造方法
152缺构造方法标识符
153缺释放方法标识符
154FAIL只允许在构造方法内使用
155无效的操作符和操作数组合
156缺内存引用
l57不能加减可重定位符号
158无效寄存器组合
159未激活286/287指令
160无效符号引用
161代码生成错
162缺ASM

回答3:

不需要这么麻烦;201是数组溢出(百度百科)
pascal中就有一项功能显示你错误的地点:点击window--zoom的选项每次运行错误后程序下方有一个绿色的框,里面就显示了你哪里错了,怎么错了。

回答4:

简单得说吧,你的程序的问题是文件不在它该在的位置或者数组越界。
你看看
Runtime error 是pascal程序中最令人讨厌的错误,内容丰富多彩,有数组越界,类型越界,文件溢出,栈溢出……你会喜欢的^_^

回答5:

数组越界
#201可以辨认出来
后面你划起来的是内存上的位置,也就是这次越界的内存地址是在哪里