PowerBASIC

PowerBASIC由位于美国佛罗里达州威尼斯的PowerBASIC公司所制作,为一种BASIC编译器,分别拥有DOS版本及Windows版本(其中又有命令行版本及图形界面开发版本)。DOS版本使用的语法类似QBasicQuickBASIC,而Windows版本则类似其他程序编译器,结合标准BASIC语言和API调用。最早发布的版本被称作BASIC/Z,之后由Borland发行时叫做Turbo BASIC。1989年Borland不再贩售Turbo BASIC与Turbo Pascal,Turbo BASIC由原开发者成立公司,而以PowerBASIC为名继续发行。[1]

PowerBASIC
1996年?
当前版本
  • 10.0 (2011年5月4日;稳定版本)
操作系统Windows, DOS
网站PowerBASIC: Basic Compilers
主要实作产品
PowerBASIC
启发语言
BASIC

语言特色

PowerBASIC的Windows版本并没有类似Visual Basic的图形开发界面,取而代之的是一个包含调试工具的纯文本开发界面,但官方及其他团体均有提供另外开发的图形开发界面以解决文本开发界面的不足,例如官方开发的PowerBASIC Forms及HelloBasic.com开发的PwrDev Developer等等。PowerBASIC能编译出机器代码,即不需要运行库的程序,编译所得程序体积小与运行速度快,以此做为与过往运行效率不佳的BASIC语言的差异,声称其运行速度不逊于当今流行的电脑语言,例如Visual Basic, C++[2]同时PowerBASIC支持开发更多范畴的进程,例如DLL控制台程序甚至驱动程序

此外,PB/WIN 10.0虽然是32比特程序,但与Windows 10兼容。也支持多线序、串行端口通信,并提供完整的图型支持。[3]

版本更新[4]

版本发布日期主要更新内容后续更新
PB/WIN 7.0 2003年5月5日[5] --- 于2003年5月29日更新7.02版本。[6]
于2004年4月15日更新7.03版本。[7]
于2004年5月10日更新7.04版本。[8]
PB/WIN 8.0 2005年3月18日[9] --- 于2006年9月21日更新8.02版本。
于2006年11月20日更新8.03版本。[10]
于2007年10月9日更新8.04版本。[11]
PB/WIN 9.0 2008年8月12日[12]
  1. 加入对对象的支持
于2009年3月3日更新9.01版本。[13]
于2009年10月8日更新9.02版本。[14]
于2010年1月6日更新9.03版本。[15]
于2010年3月15日更新9.04版本。[16]
于2010年7月30日更新9.05版本。[17]
PB/WIN 10.0 2011年1月29日[18]
  1. 加入静态链接库(.sll)的支持;
  2. 加强对Unicode字符串的支持;
  3. 加强对多线程的支持。
尚未有版本更新。

代码范例

  • 编写静态链接库的范例代码:
'编译为conversion.sll文件
#COMPILE SLL "conversion.sll"
#DIM ALL

'由毫米换算成吋的函数
FUNCTION MillimetersToInches (BYVAL mm AS DOUBLE) COMMON AS DOUBLE
    FUNCTION = mm * 0.03937#
END FUNCTION
  • 编写动态链接库的范例代码:
#COMPILE DLL "conversion.dll"
#DIM ALL

FUNCTION LIBMAIN (BYVAL hInstance   AS LONG, _
                  BYVAL fwdReason   AS LONG, _
                  BYVAL lpvReserved AS LONG) AS LONG
    SELECT CASE fwdReason
    CASE %DLL_PROCESS_ATTACH
        FUNCTION = 1
    CASE %DLL_PROCESS_DETACH
        FUNCTION = 1
    CASE %DLL_THREAD_ATTACH
        FUNCTION = 1
    CASE %DLL_THREAD_DETACH
        FUNCTION = 1
    END SELECT
END FUNCTION

'由毫米换算成吋的函数
FUNCTION MillimetersToInches ALIAS "MillimetersToInches" (BYVAL mm AS DOUBLE) EXPORT AS DOUBLE
    FUNCTION = mm * 0.03937#
END FUNCTION

参考文献

  1. . Sarasota Herald Tribune (October , 2000). [2008-03-12]. (原始内容存档于2011-05-18).
  2. . [2010-02-12]. (原始内容存档于2008-03-08).
  3. (PDF). [2019-12-02]. (原始内容存档 (PDF)于2018-11-07).
  4. . [2010-02-12]. (原始内容存档于2010-01-03).
  5. . [2011-04-09]. (原始内容存档于2011-07-18).
  6. . [2011-04-09]. (原始内容存档于2011-07-18).
  7. . [2011-04-09]. (原始内容存档于2011-07-18).
  8. . [2011-04-09]. (原始内容存档于2011-07-18).
  9. . [2011-04-09]. (原始内容存档于2011-07-18).
  10. . [2011-04-09]. (原始内容存档于2011-07-18).
  11. . [2011-04-09]. (原始内容存档于2010-01-04).
  12. . [2011-04-09]. (原始内容存档于2011-07-18).
  13. . [2011-04-09]. (原始内容存档于2011-07-18).
  14. . [2011-04-09]. (原始内容存档于2011-07-18).
  15. . [2011-04-09]. (原始内容存档于2011-07-18).
  16. . [2011-04-09]. (原始内容存档于2011-07-18).
  17. . [2011-04-09]. (原始内容存档于2011-07-18).
  18. . [2011-04-09]. (原始内容存档于2014-07-24).

外部链接

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.