XBasic
Xbasic er et gratis BASIC -basert programmeringsmiljø for Windows og GNU/Linux. Støtter konsoll- og GUI -moduser . Xbasic ble utviklet i 1988 av Max Reason for bruk i et Unix /m88k-miljø, og portert til Windows NT siden 1992 . Xbasic har vært freeware siden 1999 .
Syntaks
- Xbasic er et strukturert programmeringsspråk og bruker ikke linjenummer. Typiske grunnleggende funksjoner som datatype-suffikser (som i stor grad utvides) aksepteres, men BASIC-uttalelse som "OPEN ... FOR ... AS ..." unngås til fordel for et skjema basert på grunnleggende i funksjoner.
- Xbasic-programmer er delt inn i tre seksjoner, i stil med Pascal-programmer: "PROLOG" (typedeklarasjon), "Entry()" (hovedfunksjon) og tilleggsfunksjoner.
Variabler
- I motsetning til ANSI BASIC, men innenfor gjeldende BASIC-standard, aksepteres variabler med navn uansett lengde.
- Konstanter identifiseres med prefikset "$$"
- Jeg vet
Operatører
- I motsetning til ANSI BASIC , QBASIC eller Visual Basic , har Xbasic skiftoperatorer for binær aritmetikk, som gir større kompatibilitet med binær-nivå programmering, for eksempel CRC-beregning. Den skiller også mellom logiske operatorer og binære aritmetiske operatorer.
- Xbasic bruker operatører som ligner på C-språket:
- "**" betyr "opphøyd til"
- "^" er synonymt med XOR (det betyr ikke "opphøyet til").
- "&" står for OG (det betyr ikke "sammenknytte").
- "=" brukes ikke i IF-klausuler (eller i det minste er det ment å være det).
- "==" brukes (i stedet for "=") i IF-klausuler
Forgreninger og underrutiner
- Xbasic, som QBASIC og senere, er et strukturert programmeringsspråk .
- Tillater SELECT, DO, DO WHILE og DO TILL bortsett fra GOTO
- Tillat funksjonserklæringer via FUNCTION() annet enn GOSUB. I motsetning til QBASIC eller Visual Basic , skiller den ikke mellom funksjoner (som produserer utdata) og subrutiner (som ikke gjør det).
Instruksjoner for inn-/utdata
- Xbasic bruker sitt eget sett med input/output- instruksjoner .
- INLINE$() erstatter INPUT, INPUT$ og INPUT#
- INKEY$ og INP() er ikke tillatt.
- Filnumre er indikert med [nummer] (XBasic) i stedet for #nummer ( BASICA / QBASIC / Visual Basic ).
- Xbasic bruker filnummer =OPEN( filnavn$ , modus_konstant ) i stedet for OPEN filnavn$ FOR -modus AS #filnummer ( BASICA / QBASIC / Visual Basic ).
- READ [ filnummer ] brukes i stedet for GET #filnummer (( BASICA / QBASIC / Visual Basic ).
- Bortsett fra det ovennevnte, støtter XBASIC grafiske miljøer, og kan derfor godta input/output gjennom hendelser generert av kontroller plassert i Windows, i stil med Visual Basic
Sammendrag
Følgende diagrammer sammenligner XBASIC med en original ustrukturert Basic, ved å bruke eksempelprogrammet som vises i Wikipedia-artikkelen om BASIC :
Eksempel 1: Original ustrukturert BASIC ( Applesoft BASIC )
10 INNGANG "Hva heter du?"; U$
20 SKRIV UT "Hei"; U$
30 INNGANG "Hvor mange stjerner vil du ha?"; N
S$35 = ""
40 FOR I = 1 TIL N
S$50 = S$ + «*»
55 NESTE I
60 PRINT S$
70 INNGANG "Vil du ha flere stjerner?"; A$
80 HVIS LEN(A$) = 0 GÅ TIL 70
90 A$ = VENSTRE(A$, 1)
100 HVIS (A$ = "S") ELLER (A$ = "s") SÅ GÅ TIL 30
110 SKRIV UT "Farvel";
120 FOR I = 1 TIL 200
130 USD UTSKRIFT; " ";
140 NESTE I
150 UTSKRIFT
Eksempel 2: XBasic
FUNCTIONEntry()
Brukernavn$=INLINE$( "Hva er navnet ditt?")
SKRIV UT "Hei"; Brukernavn$
GJØRE
NoAsterisks=SBYTE(INLINE$ ("Hvor mange stjerner vil du ha?"))
Stjerner$ = ""
Asterisks$ = CHR$('*', NoAsterisks)
SKRIV UT Asterisker$
GJØRE
Svar$=INLINE$ ("Vil du ha flere stjerner?")
LOOP TIL Respons$ <> ""
LOOP MENS UCASE$(LEFT$(Answer$, 1)) = "S"
SKRIV UT "Farvel";
FOR I = 1 TIL 200
SKRIV UT Brukernavn$; " ";
NESTE I
SKRIVE UT
AVSLUTT FUNKSJON
Eksterne lenker