新手学习PASCAL语言,IDE环境是Lazarus,练手时对于输入输出语句遇到了问题,问题如下
procedure TForm1.Button1Click(Sender: TObject);
begin
   Write('hellow');
end;
就是想点一下Button然后将‘hellow’打印出来,但是IDE却提示如下错误:真是不得其解!有会的人吗,谢谢啊!pascalLazarus

解决方案 »

  1.   

    文件头部加入预编译指令{$APPTYPE CONSOLE}
      

  2.   

    谢谢,真是这样就好了,根据你的提示在帮助文件中找到了这句话:Care should be taken when compiling GUI applications; the Input and Output files are not available in a GUI
     
    application, and attempting to read from or write to them will result in a run-time error. 书上真它娘的坑,讲write与read时根本没说还要让它运行在Consol模式下,哎,学艺不精啊,光这个IDE就难的搞,不知你有什么好的学习方法可以建议我的!
      

  3.   

    谢谢,真是这样就好了,根据你的提示在帮助文件中找到了这句话:Care should be taken when compiling GUI applications; the Input and Output files are not available in a GUI
     
    application, and attempting to read from or write to them will result in a run-time error. 书上真它娘的坑,讲write与read时根本没说还要让它运行在Consol模式下,哎,学艺不精啊,光这个IDE就难的搞,不知你有什么好的学习方法可以建议我的!建议用delphi+cnpack学习,lazarus的ide不是很好,小问题多多,如果是搞linux下的控制台程序直接用fpc编译就可以了,不需要使用lazarus。
      

  4.   

    还有个问题想请教一下您,就是上周我用Pascal和其IDE写了一个简单的计算器程序,就是在写的过程中真是对于PASCAL关于数据类型的要求真是纠结,比如说:一个计算因子定义成float型又不能满足我去调用IDE的内建函数如IntToStr类的,因为这类函数的形参和我的实参类型又不同,于是为了满足调用又不得不改成和IntToStr形参相同的数据类型如改成Integer,但此时又不能满足我其它方面的要求,真是顾头不顾尾啊。Pascal对于数据类型太过于严格了,不像C一样只要不损失精度的前提下,能实施强制转换,编译器最多给个警告,大部分情况下也不会影响我程序的执行,但PASCAL的IDE只要数据类型有一点不满足,马上报错,真是纠结!不知你有什么好建议!
      

  5.   

    谢谢,真是这样就好了,根据你的提示在帮助文件中找到了这句话:Care should be taken when compiling GUI applications; the Input and Output files are not available in a GUI
     
    application, and attempting to read from or write to them will result in a run-time error. 书上真它娘的坑,讲write与read时根本没说还要让它运行在Consol模式下,哎,学艺不精啊,光这个IDE就难的搞,不知你有什么好的学习方法可以建议我的!建议用delphi+cnpack学习,lazarus的ide不是很好,小问题多多,如果是搞linux下的控制台程序直接用fpc编译就可以了,不需要使用lazarus。我对这个也不懂,我是学电子信息的,只不过最近项目要写个上位机,我老师说主要为了跨平台考虑,所以就选择了Lazarus,我根本什么都不懂,Pascal之前也没学过,我老师就要我这样搞,Delphi近几年的发展似乎停止了,但说实话Lazarus倒还是更新的很快的。尼码,学这个也没什么书可看网上的相关论坛也少,老师又要的急,老子想死的心都有了。
      

  6.   

    谢谢,真是这样就好了,根据你的提示在帮助文件中找到了这句话:Care should be taken when compiling GUI applications; the Input and Output files are not available in a GUI
     
    application, and attempting to read from or write to them will result in a run-time error. 书上真它娘的坑,讲write与read时根本没说还要让它运行在Consol模式下,哎,学艺不精啊,光这个IDE就难的搞,不知你有什么好的学习方法可以建议我的!建议用delphi+cnpack学习,lazarus的ide不是很好,小问题多多,如果是搞linux下的控制台程序直接用fpc编译就可以了,不需要使用lazarus。还有请问下,在那里能下到DELPHI的IDE啊,它的官网是那个呀?
      

  7.   

    还有个问题想请教一下您,就是上周我用Pascal和其IDE写了一个简单的计算器程序,就是在写的过程中真是对于PASCAL关于数据类型的要求真是纠结,比如说:一个计算因子定义成float型又不能满足我去调用IDE的内建函数如IntToStr类的,因为这类函数的形参和我的实参类型又不同,于是为了满足调用又不得不改成和IntToStr形参相同的数据类型如改成Integer,但此时又不能满足我其它方面的要求,真是顾头不顾尾啊。Pascal对于数据类型太过于严格了,不像C一样只要不损失精度的前提下,能实施强制转换,编译器最多给个警告,大部分情况下也不会影响我程序的执行,但PASCAL的IDE只要数据类型有一点不满足,马上报错,真是纠结!不知你有什么好建议!
    FloatToStr
      

  8.   

    其实,和C一样,Delphi下也能实施强制转换,编译器甚至不给警告。
    例如一个 AnsiString,强制转换为 WideString,只要ws:=WideString(AStr);Float说不定也能强制转为Integer。问题是,强制转换比较不安全,最好不要这么用。
    我个人呢是倾向于像.Net下那么写,
    代码较好看好改。
      

  9.   

    楼主,是不是,群里的,学艺不精,翻译DELPHI帮助的勇气人物 ?