close

XBasic

Gå til navigation Gå til søg

Xbasic er et gratis BASIC -baseret programmeringsmiljø til Windows og GNU/Linux. Understøtter konsol- og GUI -tilstande . Xbasic blev udtænkt i 1988 af Max Reason til brug i et Unix /m88k-miljø og porteret til Windows NT siden 1992 . Xbasic har været freeware siden 1999 .


Forskelle fra Standard BASIC , QBASIC og Visual Basic

Syntaks

  1. Xbasic er et struktureret programmeringssprog og bruger ikke linjenumre. Typiske grundlæggende funktioner såsom datatype-suffikser (som udvider meget) accepteres, men BASIC-udsagnsordsomhed såsom "OPEN ... FOR ... AS ..." undgås til fordel for et skema baseret på grundlæggende i funktioner.
  2. Xbasic-programmer er opdelt i tre sektioner, i stil med Pascal-programmer: "PROLOG" (typedeklaration), "Entry()" (hovedfunktion) og yderligere funktioner.

Variabler

  • I modsætning til ANSI BASIC, men inden for den nuværende BASIC-standard, accepteres variabler med navne af enhver længde.
  • Konstanter identificeres med præfikset "$$"
  • Jeg ved

Operatører

  • I modsætning til ANSI BASIC , QBASIC eller Visual Basic har Xbasic skiftoperatorer til binær aritmetik, hvilket giver mulighed for større kompatibilitet med binært niveau programmering, såsom CRC-beregning. Den skelner også mellem logiske operatorer og binære aritmetiske operatorer.
  • Xbasic bruger operatorer, der ligner dem i C-sproget:
    • "**" betyder "ophøjet til"
    • "^" er synonymt med XOR (det betyder ikke "ophøjet til").
    • "&" står for OG (det betyder ikke "sammenkæde").
    • "=" bruges ikke i IF-klausuler (eller i det mindste formodes det at være det).
    • "==" bruges (i stedet for "=") i IF-klausuler

Forgreninger og underrutiner

  • Xbasic er ligesom QBASIC og senere et struktureret programmeringssprog .
  • Tillader SELECT, DO, DO WHILE og DO TILL bortset fra GOTO
  • Tillad funktionserklæringer via FUNCTION() bortset fra GOSUB. I modsætning til QBASIC eller Visual Basic skelner den ikke mellem funktioner (som producerer output) og underrutiner (som ikke gør det).

Input/output instruktioner

  • Xbasic bruger sit eget sæt af input/output instruktioner .
  • INLINE$() erstatter INPUT, INPUT$ og INPUT#
  • INKEY$ og INP() er ikke tilladt.
  • Filnumre er angivet med [number] (XBasic) i stedet for #number ( BASICA / QBASIC / Visual Basic ).
  • Xbasic bruger filnummer =OPEN( filnavn$ , mode_konstant ) i stedet for OPEN filnavn$ FOR tilstand AS #filnummer ( BASICA / QBASIC / Visual Basic ).
  • READ [ filnummer ] bruges i stedet for GET # filnummer (( BASICA / QBASIC / Visual Basic ).
  • Bortset fra ovenstående understøtter XBASIC grafiske miljøer og kan derfor acceptere input/output gennem hændelser genereret af kontroller placeret i windows, i stil med Visual Basic

Resumé

Følgende diagrammer sammenligner XBASIC med en original ustruktureret Basic ved hjælp af eksempelprogrammet, der vises i Wikipedia-artiklen om BASIC :

Eksempel 1: Original ustruktureret BASIC ( Applesoft BASIC )

10 INPUT "Hvad er dit navn?"; U$
 20 UDSKRIV "Hej"; U$
 30 INPUT "Hvor mange stjerner vil du have?"; N
 35 S$ = ""
 40 FOR I = 1 TIL N
 50 S$ = S$ + "*"
 55 NÆSTE I
 60 PRINT S$
 70 INPUT "Vil du have 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 UDSKRIV "Farvel";
120 FOR I = 1 TIL 200
130 $ UDSKRIV; " ";
140 NÆSTE I
150 PRINT

Eksempel 2: XBasic

FUNCTIONEntry()
    Brugernavn$=INLINE$( "Hvad er dit navn?")
    UDSKRIV "Hej"; Brugernavn$
    GØR
        NoAsterisks=SBYTE(INLINE$ ("Hvor mange stjerner vil du have?"))
        Stjerner$ = ""
        Stjerner$ = CHR$('*', Ingen stjerner)
        UDSKRIV stjerner$
        GØR
	    Svar$=INLINE$ ("Vil du have flere stjerner?")
        LOOP TIL Svar$ <> ""
    LOOP MENS UCASE$(LEFT$(Answer$, 1)) = "S"
    UDSKRIV "Farvel";
    FOR I = 1 TIL 200
        UDSKRIV Brugernavn$; " ";
    NÆSTE I
    PRINT
AFSLUT FUNKTION

Eksterne links