pascal问题 文件输入输出错误

pascal文件输入输出时总是出现如下错误incompatibletypeforargno.1,gotVOID,expectedTYPFILE在assign(input(... pascal 文件输入输出时总是出现如下错误

incompatible type for arg no. 1, got VOID, expected TYPFILE
在assign(input(或者ouput),’*.in‘)那行出现此错误
incompatible type for arg no. 1, got VOID, expected FILE
在reset(或者rewrite)(input(或者output))还有close(input(或者output))那行出现此错误;

此问题一直不能解决 求高手指点
回答满意有加分
program treasure;
const
maxn=10000;
maxm=35;
var
i,n:1..maxn;
j,m,m_:0..maxm;
a:-1..maxm;
ladder:array[1..maxn,0..maxm] of integer;
num:array[1..maxn,0..maxm] of longint;
sum:longint;
procedure input;
begin
assign(input,'treasure.in');
reset(input);
readln(n,m);
for i:=1 to n do
for j:=0 to m-1 do
begin
read(ladder[i,j]);
readln(num[i,j]);
end;
readln(a);
close(input);
end;
procedure output;
begin
assign(output,'treasure.out');
rewrite(output);
writeln(sum mod 20123);
close(output);
end;
begin
input;
output;
end.
由于长度限制无法把完整程序给出 只给出了输入输出部分的代码

而且只有用FREE PASCAL和 CENA时才会出现这种情况 用TURBO时程序可以运行
展开
 我来答
l00oy
2012-12-08 · TA获得超过1239个赞
知道小有建树答主
回答量:611
采纳率:78%
帮助的人:195万
展开全部
两个问题 ①
procedure input;改为procedure input1;
procedure output;改为procedure output1;
②我曾经也遇到过这种问题.
这是因为turbo他会每次都自动在你这个pas程序的目录下找输入文件(且每次都要你手动打开),而free pascal是如果你这次是手动打开的这个文件,那么他也会自动在你这个pas程序的目录下找输入文件,但如果你退出free pascal,这时你再打开free pascal,那么他会自动帮你打开这个pas程序,但它这次不是从你这个pas程序的目录下找,而是从free pascal的安装的默认的地方找
曾经我也为此不断的更改,调试程序 后来发现原来不是代码的问题
解决方法:在free pascal的界面下关闭这个程序(window-close),但不要退出free pascal然后再重新手动打开程序即可
peter987662
2012-11-25 · TA获得超过1330个赞
知道小有建树答主
回答量:1117
采纳率:0%
帮助的人:1184万
展开全部
我知道为何了
你的函数名运用了保留字(input,output)
这样就会让编译器搞不清input,output是什么
把函数名改成别的,就行了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sbf123sbf
2012-11-25
知道答主
回答量:21
采纳率:0%
帮助的人:10.9万
展开全部
同上,注意output,input,to,for等保留字是不能拿来定义变量或者函数,过程等的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6985e24
2012-11-24 · 超过12用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:35.7万
展开全部
给我看下源程序
追问
今天错误代码又变成了
incompatible type for arg no. 2, got “SHORSTRING”, expected “CHAR”
在assign(input(或者ouput),’*.in‘)那行出现此错误
call by var parameters have to match exactly: got "UNTYPED" expected "TEXT"
在reset(或者rewrite)(input(或者output))还有close(input(或者output))那行出现此错误;
追答
看不到你的源程序,所以没法帮你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式