Pascal库编译错误

时间:2013-09-28 04:49:05

标签: syntax-error pascal freepascal

由于某种原因,此代码会产生以下错误:

“致命:语法错误,”BEGIN“预期但”标识符TESTQ“发现”

library test;

procedure testp;
begin

end;

procedure testq;
begin

end;

exports
  testp;
  testq;
end.

以下是我在此处找到的编译示例代码:http://www.freepascal.org/docs-html/prog/progse54.html

library subs; 

function SubStr(CString: PChar;FromPos,ToPos: Longint): PChar; cdecl; 

var 
  Length: Integer; 

begin 
  Length := StrLen(CString); 
  SubStr := CString + Length; 
  if (FromPos > 0) and (ToPos >= FromPos) then 
  begin 
    if Length >= FromPos then 
      SubStr := CString + FromPos - 1; 
    if Length > ToPos then 
    CString[ToPos] := #0; 
  end; 
end; 

exports 
  SubStr; 

end.

我已经意识到每当我使用多个函数,过程或两者的组合时,它会为exports部分抛出同样的错误。为什么会发生这种情况?如何防止它发生?

1 个答案:

答案 0 :(得分:2)

exports列表应以逗号分隔:

exports
  testp,
  testq;

end.