FreeBASIC
| FreeBasic | ||
|---|---|---|
![]() | ||
|
| ||
| Kehittäjä(t) | ||
|
FreeBASIC-kehitystiimi http://www.freebasic.net/ ja https://www.freebasic.net/ | ||
| Yleistä tietoa | ||
| Yleiset laajennukset | bas ja bi | |
| Paradigma | Proseduurillinen , oliosuuntautunut | |
| Esiintyi | 2004 | |
| Suunnitellut | Andrew Victor | |
| Uusin vakaa versio | 1.09 (21. toukokuuta 2022 (4 kuukautta ja 27 päivää)) | |
| tyyppinen järjestelmä | Vahva | |
| Toteutukset | GCbasic | |
| vaikuttanut | QuickBasic , C | |
| Käyttöjärjestelmä | DOS , FreeBSD , GNU/Linux , Microsoft Windows | |
| Lisenssi | GNU GPL , GNU LGPL :n alaiset kirjastot | |
FreeBASIC on ilmainen, avoimen lähdekoodin ( GPL -lisensoitu ) BASIC -kielen kääntäjä- ja ohjelmointikieli . Se on suunniteltu syntaksiyhteensopivaksi QuickBASICin kanssa , mikä tuo uusia ominaisuuksia. Se voidaan kääntää DOS- , Microsoft Windows- , Linux- ja XBOX-käyttöjärjestelmille, ja se siirretään muille alustoille.
FreeBASICia tukevat GNU binutils -ohjelmointityökalut , ja se voi luoda konsoli- ja GUI-suoritustiedostoja sekä dynaamisia ja staattisia kirjastoja .
FreeBASICiin on lisätty QuickBasicille ominaiset ominaisuudet, kuten grafiikkakirjasto ja laitteistoportin käyttö. Joitakin uusia ominaisuuksia ovat osoittimet ja inline assembler; objektit ja Unicode- tuki ovat pian saatavilla .
GNU-C-kirjastoja voidaan käyttää FreeBasicin kanssa; otsikot ovat jo saatavilla wxWidgetsille , Gtk :lle , GSL :lle , SDL :lle , Allegrolle , Lualle , OpenGL :lle ja MySQL :lle . Lista kasvaa jokaisen painoksen myötä.
FreeBASICia käytetään tärkeissä sovelluksissa. Kääntäjä on yli 57 000 riviä pitkä ja se on kirjoitettu FreeBASICilla. Käyttäjät itse kirjoittavat dokumentaation Wikin kautta .
Syntaksi
Syntaksi on erittäin samanlainen kuin Microsoftin QuickBASIC - tuotteessa , vaikka se sisältää monia parannuksia, jotka liittyvät nykyaikaisempaan koodaustekniikkaan, kuten jäsentelyyn ja käyttäjän määrittämien tyyppien, kuten objektien, käyttöön.
Kommentit
Kommentit voidaan kirjoittaa heittomerkeillä [ 1 ]
'' Tämä on yksirivinen kommentti
Tulosta "Hello World" -kommentti lausunnon jälkeen
Muuttujat
Muuttujat on ilmoitettava määrittämällä niiden tyyppi Dim [ 2 ]
'' Esimerkki muuttujamäärityksestä
Yksi muuttuja Dim-lausetta kohden
Dim text As String Dim x As Double
Useamman kuin yhden erityyppisen muuttujan ilmoitus
Dim k As Single , factor As Double , s As String
'' Useamman kuin yhden samantyyppisen muuttujan ilmoitus
Dim As Integer mx , my , mz , mb
Ehdot
Ehdollinen lauseke ( If ) suorittaa sisäisen koodilohkonsa vain, jos tietty ehto täyttyy. Se määritellään käyttämällä avainsanaa If, jota seuraa ehto ja koodilohko. Mahdolliset lisäehdot syötetään käyttämällä ElseIfehtoa ja sen koodilohkoa. Kaikki ehdot arvioidaan peräkkäin, kunnes löydetään ensimmäinen, joka on tosi, ja siihen liittyvä koodilohko on ainoa, joka suoritetaan. Valinnaisesti voi olla viimeinen lohko (avainsana Else, jota seuraa koodilohko), joka suoritetaan vain, kun kaikki ehdot olivat vääriä. [ 3 ]
Dim As Integer num , arvaa
Randomize
num = Int ( Rnd * 10 ) + 1 'Luo satunnaisluku väliltä 1 ja 10... Tulosta "Arvaa luku väliltä 1 - 10"
Syötä "Syötä numero" ; Arvaus
Jos arvaus > 10 TAI arvaa < 1 Sitten 'Käyttäjä syötti lukualueen ulkopuolella Tulosta "Luvun on oltava pienempi kuin 10 tai suurempi kuin 1!" ElseIf arvaus > num Then 'Erittäin korkea Tulosta "Erittäin suuri" ElseIf arvaa < num Then 'Erittäin lyhyt Tulosta "Erittäin pieni" Else 'Oikea Tulosta "Oikein!" Lopeta jos
For/Seuraava silmukka
For- silmukka on samanlainen kuin foreach muissa kielissä. Selaa iteroitavan objektin läpi ja suorita jokaiselle elementille sisäinen koodilohko: [ 4 ]
Himmeä kokonaislukuna i , j , k j = 9 : k = 1 _
Jos i = 0 - j Vaihe k Tulosta i ; Seuraava i
While/Wend silmukka
While- silmukka arvioi ehdon ja, jos se on tosi, suorittaa sisäisen koodilohkon. Se jatkaa arviointia ja suorittamista niin kauan kuin ehto on totta. Se määritellään avainsanalla While, jota seuraa ehto ja sitten sisäinen koodilohko: [ 5 ]
Dim As Integer numero numero = 0
Vaikka ( numero < 10 ) tulosta numero ; numero = numero + 1 Wend
Tee/silmukka
Do - käsky suorittaa lauseet seuraavassa lausekkeessa, kunnes/kun ehto, jos sellainen on, evaluoituu tosi: [ 6 ]
Dim As Integer n = 1 '' tarkistettava numero Dim As Integer yhteensä_pariton = 0 '' parittomat luvut yhteensä Tee asti ( n > 10 ) Jos ( ( n Mod 2 ) > 0 ) Sitten yhteensä_pariton += 1 '' lisää kokonaismäärää jos n on pariton n += 1 Loop Tulosta "Parittomat luvut yhteensä: " ; yhteensä_pariton
Valitse tapausselvitys
Select Case -käsky suorittaa tietyn koodin lausekkeen arvon perusteella. Lauseke arvioidaan kerran ja sitä verrataan kuhunkin tapaukseen järjestyksessä, kunnes vastaavuus löytyy. Vastaavan Case -haaran koodi suoritetaan ja ohjelma hyppää Select Case -lohkon loppuun. Jos mikään tapausehdoista ei täyty, Case Else -haarassa oleva koodi suoritetaan , jos sellainen on olemassa. [ 7 ]
Himmeä valinta Kokonaislukuna _
Syötä "Valitse numero väliltä 1 ja 10:" ; valinta
Valitse tapaus vakiovalinnaksi Tapaus 1 Tulosta "Numero on 1" Tapaus 2 Tulosta "Numero on 2" Tapaus 3 , 4 Tulosta "Numero on 3 tai 4" Tapaus 5 - 10 Tulosta " Numero on välillä 5 to 10" Case Else Print "Numero on alueen 1 - 10 ulkopuolella" End Select
Factorial-funktio
Funktion tekijä ( n kokonaislukuna ) kokonaislukuna , jos n = 0 , sitten palautus 1 loppu , jos palautus n * tekijä ( n - 1 ) loppufunktio
Viitteet
Ulkoiset linkit
- Virallinen sivusto (englanniksi)
- Virallinen foorumi (englanniksi)
- FreeBASIC-dokumentaatio- wiki
