INPUT #handle "string expression"; variableName

 


Description:
Dit commando kent verscheidene mogelijke vormen:

    

input var

Bij deze vorm wacht een programma op de gebruiker om gegevens in het mainwin programma in te geven en op de "enter" toets te drukken. Het zal dan de ingegeven gegevens aan variabele var toewijzen.

input "enter data"; var

Deze vorm zal de string "enter data" tonen en dan stoppen en wachten op de gebruiker om gegevens in het mainwin programma in te geven en "Enter" te drukken. Het zal dan de ingegeven gegevens aan var toewijzen.

input #name, var

Deze vorm zal het volgende gegevensonderdeel uit het geopende bestand of het apparaat dat de handle genaamd #name gebruikt, halen en zal dit gegeven aan var toewijzen. Als geen apparaat of dossier bestaat dat de genoemde handle #name gebruikt, dan geeft INPUT een fout.

input #name, var1, var2

Deze vorm zorgt ervoor dat de volgende twee gegevensonderdelen worden opgehaald en aan var1 en var2 worden toegewezen.

line input #name, var$

Het LINE INPUT statement zal uit een bestand lezen en daarbij alle komma's in de inputstroom negeren. Het zal het gegevensonderdeel inlezen tot de eerst volgende enter of tot aan het eind van de file. Dit is nuttig voor om teksten in te lezen met ingebedde komma's Gebruik: 'Display a text file filedialog "Open..." , "*.txt", filename$ open filename$ for input as #text [loop] if eof(#text) <> 0 then [quit] input #text, item$ print item$ goto [loop] [quit] close #text print "Done." end Arrays In eerdere versies van Liberty BASIC, kon INPUT niet worden gebruikt om inputgegevens direct in arrays te plaatsen. Die konden alleen in eenvoudige variabelen worden geplaatst. Sinds Liberty BASIC 3, bestaat die beperking niet meer. Het is nu mogelijk om Input en Line Input te gebruiken om arrays rechtstreeks te vullen. Om rechtstreeks in een array in te voeren: input array$(x) Het is ook mogelijk om deze methode te gebruiken: input array$(x), string$, stuff(i) Question Mark De meeste versies van Microsoft BASIC laten INPUT automatisch vlak voor de cursor een vraagteken op het beeldscherm plaatsen, wanneer de gebruiker om informatie wordt gevraagd: input "Please enter the upper limit"; limit produces: Please enter the upper limit ? | Liberty BASIC maakt het doen verschijnen van een vraagteken tot een optie. input "Please enter the upper limit :"; limit produces: Please enter the upper limit: | en: input limit produces simply: ? | In de simpele vorm INPUT limit, wordt het vraagteken automatisch opgenomen, maar als een prompt wordt gespecificeerd, zoals in het bovengenoemde voorbeeld, dan wordt slechts de inhoud van de prompt getoond, en verder niets. Als het noodzakelijk is om input zonder een prompt en zonder een vraagteken te verkrijgen, dan zal het volgende het gewenste effect geven: input ""; limit Bovendien, zal bij de meeste BASIC versies van Microsoft, als INPUT een numerieke waarde verwacht en een niet-numerieke of stringwaarde is ingegeven, dan zal de gebruiker met commentaar worden geconfronteerd iets als "Redo from Start", en wordt verondersteld om opnieuw in te voeren. Liberty BASIC doet dit niet automatisch, maar zet de invoer op een nul waarde in de dienovereenkomstige variabele. De prompt kan als string variabele, of als letterlijke string worden uitgedrukt: prompt$ = "Please enter the upper limit:" input prompt$; limit See also: INPUT$(#h, n), INPUTTO$(#h, c$), Line Input