Mon . 19 Aug 2019
TR | RU | UK | KK | BE |

freeBASIC, free basic
FreeBASIC is a multiplatform, free/open source GPL BASIC compiler2 for Microsoft Windows, protected-mode DOS DOS extender, Linux, FreeBSD and Xbox The Xbox version is no longer maintained3

According to its official Web site,4 FreeBASIC provides syntax compatibility with programs originally written in Microsoft QuickBASIC QB Unlike QuickBASIC, however, FreeBASIC is a command line only compiler, unless users manually install an external integrated development environment IDE of their choice5 IDEs specifically made for FreeBASIC include FBide and FbEdit


  • 1 Compiler features
    • 11 Syntax
    • 12 Graphics library
    • 13 Language dialects
  • 2 Example code
  • 3 References
  • 4 External links

Compiler featuresedit

On its back end, FreeBASIC makes use of GNU Binutils in order to produce console and graphical user interface applications FreeBASIC supports the linking and creation of C static and dynamic libraries and has limited support for C++ libraries As a result, code compiled in FreeBASIC can be reused in most native development environments

C style preprocessing, including multiline macros, conditional compiling and file inclusion, is supported The preprocessor also has access to symbol information and compiler settings, such as the language dialect


Initially, FreeBASIC emulated Microsoft QuickBASIC syntax as closely as possible Beyond that, the language has continued its evolution As a result, FreeBASIC combines several language dialects for maximum level of compatibility with QuickBASIC and full access to modern features6 New features include support for concepts such as objects, operator overloading, function overloading, namespaces and others7

Newline characters indicate the termination of programming statements A programming statement can be distributed on multiple consecutive lines by using the underscore line continuation char _, whereas multiple statements may be written on a single line by separating each statement with a colon :

Block comments, as well as end-of-line remarks are supported Full line comments are made with an apostrophe ', while blocks of commented code begin with /' and end with '/

FreeBASIC is not case-sensitive

Graphics libraryedit

FreeBASIC provides built-in, QuickBASIC compatible graphics support through FBgfx, which is automatically included into programs that make a call to the SCREEN command Its backend defaults to OpenGL on Linux and DirectX on Microsoft Windows This abstraction makes FBgfx graphics code cross-platform compatible However, FBgfx is not hardware accelerated

Users familiar with external graphics utilities such as OpenGL or the Windows API can use them without interfering with the built-in graphics library

Language dialectsedit

As FreeBASIC has evolved, changes have been made that required breaking older-styled syntax In order to continue supporting programs written using the older syntax, FreeBASIC now supports the following dialects:

  • The default dialect -lang fb as a command-line argument supports all new compiler features and disallows archaic syntax
  • The FB-lite dialect -lang fblite permits use of most new, non-object-oriented features in addition to older-style programming Implicit variables, suffixes, GOSUB / RETURN, numeric labels and other features are allowed in this dialect
  • The QB dialect -lang qb attempts to replicate QuickBASIC behavior and is able to compile many QuickBASIC programs without modification

Example codeedit

Standard programs, such as the "Hello, World!" program are done just as they were in QuickBASIC

Print "Hello, World!" sleep:end 'Comment, prevents the program window from closing instantly

FreeBASIC adds to this with support for object-oriented features such as methods, constructors, dynamic memory allocation, properties and temporary allocation

Type Vector Private: x As Integer y As Integer Public: Declare Constructor nX As Integer = 0, nY As Integer = 0 Declare Property getX As Integer Declare Property getY As Integer End Type Constructor Vector nX As Integer, nY As Integer x = nX y = nY End Constructor Property VectorgetX As Integer Return x End Property Property VectorgetY As Integer Return y End Property Dim As Vector Ptr player = New Vector player = Type<Vector>100, 100 Print player->getX Print player->getY Delete player Sleep 'Prevents the program window from closing instantly

In both cases, the language is well suited for learning purposes


  • Free software portal
  1. ^ "freeBASIC about page" freeBASIC compiler Retrieved 5 February 2012 
  2. ^ Lee Seats "freeBASIC the Successor to QuickBASIC" Aboutcom Retrieved 2008-08-17 
  3. ^ FBWiki : FaqPgxbox
  4. ^ freeBASIC Programming Language: Official Web site
  5. ^ "freeBASIC official website downloads page" freeBASIC compiler Retrieved 5 February 2012 
  6. ^ "freeBASIC dialects" coderJeff's home page Retrieved 5 February 2012 
  7. ^ "Differences from QB" freeBASICnet documentation Retrieved 5 February 2012 

External linksedit

  • Official website
  • FreeBASIC on GitHub
  • FreeBASIC on SourceForgenet
  • fbidefreebasicnet — FBIDE Integrated Development Environment for freeBASIC
  • FBEdit source code editor for freeBASIC on SourceForgenet

free basic, free basic calculator, free basic download, free basic facebook, free basic forum, free basic limewire music download, free basic rental agreement, free basic solitaire,,

freeBASIC Information about


  • user icon

    freeBASIC beatiful post thanks!


freeBASIC viewing the topic.
freeBASIC what, freeBASIC who, freeBASIC explanation

There are excerpts from wikipedia on this article and video

Random Posts



A book is a set of written, printed, illustrated, or blank sheets, made of ink, paper, parchment, or...
Boston Renegades

Boston Renegades

Boston Renegades was an American women’s soccer team, founded in 2003 The team was a member of the U...
Sa Caleta Phoenician Settlement

Sa Caleta Phoenician Settlement

Sa Caleta Phoenician Settlement can be found on a rocky headland about 10 kilometers west of Ibiza T...

Bodybuildingcom is an American online retailer based in Boise, Idaho, specializing in dietary supple...

Random Posts (

Umudova, Nargiz Mamedaga Kyzy

Umudova, Nargiz Mamedaga Kyzy

Nargiz Umudova Azerb Nåğárgiz Umudova; born June 20, 1989, Baku, USSR - Azerbaijan chess player, gra
Arnheim, Karl Karlovich

Arnheim, Karl Karlovich

Karl Karlovich Arnheim 1840–1888 - Russian educator Brother of the Doctor of Medicine, one of the fi
Russian evangelism

Russian evangelism

Evangelical Christians - a movement of Protestant Christianity, close to Baptism according to a numb
Rosario, Amed

Rosario, Amed

Herman Amed Valdez Rosario Isp German Amed Valdez Rosario, November 20, 1995, Santo Domingo - Domini