|
PureBasic 是一个新的基于"BASIC"标准的"高级"编程语言. 它兼容其它任何 "BASIC" 编译器, 不管它是Amiga 或 PC 格式. 学习 PureBasic非常简单! PureBasic已经赢得了很多初学者和专家.编缉时间是确实很快.它已经开发了Windows的版本. 为快速认识和系统学习这门语言,我做了大量的工作,使用了友好的语言.
语法很简单并且可能是非常"高级"的函数,如指针,结构,过程,动态链表等. 富有经验的程序员可以毫不费力的访问系统支持的结构和 Windows API .
PureBasic 是一个兼容性广泛的编程语言,支持 AmigaOS (680x0 和 PowerPC) 和 Windows计算机系统. 这意味着同样的代码可以被编译为两种系统的本地代码而流畅运行.没有瓶颈象虚拟的机器和代码翻译器,生成的代码是一个优化过的可执行程序.外部库是充分写了支持优化的汇编程序,每个程序非常快,命令常常比C/C++还快或等同.
PureBasic主要特色:
- 支持486, Pentium (Pro, II, III)
- 内嵌数组, 动态表, 复合体结构,指针,和变量定义
- 已支持类型: Byte (8 bits), Word (16 bits), Long (32 bits), Float (32 bits) 和用户自定义类型(结构)
- 内建字符串类型(characters)
- 支持常量,二进制和十六进制的数值
- 常量和数字数据可写在一个表达中
- 标准算术支持遵守符号优先和括号: +, -, /, *, and, or, <<, >>
- 高速编译器, 大约 300 000 行/分钟在P200!
- 过程支持本地和全局变量结构编程
- 支持所有标准 BASIC 关键词: If-Else-EndIf, Repeat-Until, 等等
- 使用专用库操纵 BMP 图象, windows, gadgets, DirectX, 等等
- 使用专用用库充分写了支持优化速度和体积的汇编程序
- 象BASIC关键字一样完全支持Win32 API
- 汇编程序内嵌
- 为快速编译使用固定文件预编译结构
- 结构化 CLI编译器
- 高效率,包括大量关键词,联机帮助
- 友好的系统,简单而好用,安装方便
v4.00
- Added: Native unicode support
- Added: Subsystems support
- Added: Unlimited length strings in both ascii and unicode mode
- Added: Thread safe commandset and strings
- Added: Character type (.c)
- Added: Double type (.d)
- Added: Quad type (.q)
- Added: 'XOr' and 'Not' logicals operators
- Added: Fixed string type (String${#Number})
- Added: Macro/EndMacro - single and complex mode
- Added: With/EndWith for cleaner code
- Added: Assign possibility to Static (quite important), Protected and Global: "Global a = 5"
- Added: It's now possible to create a linkedlist of pointer
- Added: Support for Global, Protected, Static and Shared arrays and linkedlist: "Global NewList MyList.l()".
NewList alone does not make the list global anymore
- Added: #PB_Compiler_File, #PB_Compiler_Line, #PB_Compiler_Version, #PB_Compiler_Home,
#PB_Compiler_Debugger, #PB_Compiler_ThreadSafe, #PB_Compiler_Unicode
- Added: CompilerError "Message" directive
- Added: @procedure()and ?Label support in Data.l directive
- Added: optional parameters for procedures, interfaces methods, and prototypes
- Added: /CONSTANT Test=Value switch to declare constants on the compiler line
- Added: Swap keyword to quickly swap 2 variables or elements (Swap a,b).
- Added: multiple 'Case' for Select/EndSelect: Case 1, 2, 6 To 20
- Added: 'Prototype' keyword to declare functions pointers easily
- Added: 'ProcedureC' keyword to declare cdecl procedure easily
- Added: Procedure parameters can now have the same name than a global variable
(automatically protected)
- Added: EnableExplicit/DisableExplicit: variables must be declared with Define, Global, Protected, Shared or Static.
- Added: Defined(Name, Type) compiler function. Type can be #PB_Constant, #PB_Variable, #PB_Array,
#PB_LinkedList, #PB_Structure, #PB_Interface
- Added: ReDim for single and multi-dimensionned arrays
- Added: Import/ImportC/EndImport to import functions and variables from external .lib
- Added: LinkedList and Arrays can now be passed as procedure parameters
- Added: /LINKER flags to provide a command file directly to the linker
- Added: PseudoTypes: p-ascii, p-unicode and p-bstr to use with 'Prototype' and 'Interface'
- Added: Assembler and Linker errors for CLI compiler are now directly displayed
- Added: OpenGL subsystem for multimedia applications (can be combined with NT4 one)
- Added: full alphachannel support for Sprite3D library (trough PNG and TIFF)
- Added: Subsystem() compiler directive to check if a subsystem is in use
- Added: exponent form for constant float: 123.5e-20
- Added: local variables aliases are generated when using '!' raw assembly to ease their referencing (in the form p.v_variable)
- Added: 'Step over' and 'Step out' features to the debugger
- Added: Process library
- Updated: NT4 support is now done trough a subsystem (DirectX 3)
- Updated: Resident files now supports quad, double, macros and prototypes
- Updated: Many library commands
- Updated: OGRE engine to 1.0.7 version
- Updated: The french documentation has been greatly enhanced
- Updated: File library supports 64 bits files
- Optimized: Smaller executable footprint: 1,5 kb instead of 2,5 kb for the smallest one
- Optimized: Faster float and litteral numeric mixing
- Optimized: File library completely rewritten and now handle a read/write cache for very fast performances.
- Optimized: Procedures are now as small as possible, which should give some speed increase
- Changed: Console library commands can now fully redirected (ie: to write CGI for example)
- Changed: When a numeric parameter is expected, it's not possible to pass a string anymore
- Changed: Temporary purebasic.exe name aren't random anymore, to comply with some firewalls
- Changed: 'DefType' renamed to 'Define'
- Fixed: Internal system functions no more trash reserved registers
- Fixed: Mouse is automatically released in windowed mode when the window loose focus
- Fixed: KeyboardInkey() now handle shift/alt modifiers correctly
- Fixed: IsScreenActive() works correctly for windowed mode as well
- Fixed: A lot of small/medium issues which have arosen since the last version
http://www.purebasic.cn/Download/PureBasic_Demo.exe
PureBasic.v4.00.WinALL.Retail-ArCADE
http://rapidshare.de/files/235****7763/pb4.zip.html |
|