FreeBasic

FreeBasic
Logo.
Image illustrative de l’article FreeBasic

Date de première version Voir et modifier les données sur Wikidata
Dernière version 1.10.1 ()[1]Voir et modifier les données sur Wikidata
Influencé par C
QBasicVoir et modifier les données sur Wikidata
Écrit en BASICVoir et modifier les données sur Wikidata
Licence Licence publique générale GNUVoir et modifier les données sur Wikidata
Site web www.freebasic.netVoir et modifier les données sur Wikidata
Extension de fichier bas et biVoir et modifier les données sur Wikidata

FreeBasic est un compilateur libre de langage BASIC pour les plateformes DOS, Linux et Windows. Il est placé sous licence publique générale GNU et permet de créer des exécutables 32 bits dans des modes graphiques haute résolution basés sur une bibliothèque graphique incorporée. De plus, il est possible d'appeler des bibliothèques externes, telles que GTK+, GSL, SDL, Allegro, Lua, OpenGL.

FreeBasic est largement compatible avec QuickBASIC, tout en apportant de nombreuses extensions. Certaines instructions et fonctions diffèrent dans des cas particuliers de celles des autres langages BASIC.

Sous Windows, FreeBasic dispose d'un éditeur, nommé FBIDE, qui permet d'émuler l'IDE de QuickBASIC, et aussi Fbedit.

FreeBasic utilise les outils de programmation du paquet GNU Binary Utilities et peut produire des exécutables en ligne de commande ou en mode graphique, ainsi que des bibliothèques statiques ou dynamiques.

Le compilateur, avec plus de 57 000 lignes de code, peut se compiler lui-même.

Très rapide : plus de 100 MegaFlops sur un petit netbook pc.

Exemple de code

Un programme Hello world en FreeBasic :

print "Hello, world"
sleep

Autre programme "hello" avec fenetre gui windows

#Include Once "gui_chung.bi"

Dim Shared As Integer quit
Sub subquit
	quit=1
End Sub
Sub subhello()
	guinotice "hello"
End Sub

button("win.hello","hello",@subhello,10,10,50,20)
openwindow("win","windowname",10,10,300,200)

trapclose("win",@subquit)

While guitestkey(vk_escape)=0 And quit=0
	guiscan
	Sleep 20
Wend

guiclose
guiquit

End

Voir aussi

Liens externes

Notes et références

  1. a et b « Release 1.10.1 », (consulté le )