Deutsch
Befehlssatz und Hilfe

§ 9 - Variablen

 
Variablen werden automatisch deklariert. Sie sind lokal und typen-dynamisch.

Der Wertetyp einer Variablen entspricht immer dem Werte-Type der letzten Zuweisung.
i=1// nun i Typ long
i="Hallo"//  nun i Typ string
i=1.1//  nun i Typ float

Es können auch in einem Rutsch komplexe Strukturen definiert werden:
myvar=[
"wald1"=[
"äpfel"=20
"birnen"=30
]
"stadt"=[
"autos"=20
"züge"=[

]
]

Das Selbe mit OOP-Schreibweise:

Möglichkeiten bei numerischen Schlüsseln:
a=[10,20,30]
a.3=40
print a.0

Jedoch:
b=5
print a.b//entspricht nicht a.5 sondern a["b"]
//
print a[b]//entspricht a[5]

Stringkonstanten können mit " sowie - was recht praktisch ist - mit ' umschlossen definiert werden.
s="Hallo"
s='Hallo'

Für Arrays einfach in eckiger Klammer kommagetrennte Werte: [10,20,30,...]  
a=[10,20,30]

Wird auf eine Stringvariable wie ein Array zugegriffen per eckicke Klammern so kann auf jedes einzelne Zeichen zurückgegriffen werden als wäre der String ein CharArray:
a="test"
print a[2]//gibt s aus
//auch Möglich:
print "test"[2]// gibt s aus

Hinweis: Assoziative Arrays mit OOP-Schreibweise nutzen:
a.groove.beat=10
// entspricht
a["groove"]["beat"]=10

Datentyp einer Variablen ermitteln:
a=5
case °a == "long" :

Siehe auch: § 5 - Datentypen
 
02.12.2014  
 




Michael
W.
Bekommt String dann Untertypen?
Ansistring, Widestring16, Utf-8

So etwas ähnliches läuft ja bei FreePascal...
Welchen Stringtyp nutzt Android denn überhaupt.
 
XProfan X3
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
02.12.2014  
 



Ich werde alles möglichst nach UTF8 ausrichten.

Android nativ nutzt imho auch "nur" ansi, die Apps hingegen können sonstwelche Zeichensätze verwenden.
 
02.12.2014  
 



Stringkonstanten Schreibweise


Nachtrag: Stringkonstanten können nicht nur mit " und ' umschlossen
definiert werden sondern auch per Akut ´ (  [...]  ) .

Das hat so viele Vorteile.

Beispielsweise kann man die Zeichenfolge(n)

Max's Burger -> "Max's Burger",
Max "Jonas" Mustermann -> 'Max "Jonas" Mustermann',
Max's Burger "Jonas" Mustermann -> ´Max's Burger "Jonas" Mustermann´

definieren.
 
03.12.2014  
 



Arrays Schreibweise


Nachtrag: Habe lange hin und her überlegt (haha, grüble quasi schon seit jahren dran), welche die einfachste aber meiner Meinung nach auch sinnvollste Arrayschreibweise sein könnte z.B. auch wenn man Arrays als Parameter übergeben möchte aber ohne eine Variable zu deklarieren.

Oder einfacher: Wie soll ein var aussehen für ein Array das gleich Werte bekommt. Nun habe ich eine imho sehr saubere Lösung:

Am Beispiel der Funktion Input kann man es gut erklären.

Momentan Parameter: Titel, Vorgabe, ButtonsBeschriftungenAlsArray.

Und so gehts:
KompilierenMarkierenSeparieren
input "Titel","VorgabeText",["Button1-Text","Button2-Text",...]
//oder
var meinArray=[10,20,30]

Ich find' das "perfekt". Einfach nur die eckigen Klammern ohne Bingbong und Klimperdideldu.

@Roland: Vlt. kannst Du auch für XProfan X3 diese Schreibweise übersetzen? Ich halte das einfach fürs Beste. Das Schlüsselwort Array ist damit überflüssig.
 
04.12.2014  
 



Nachtrag:

2 neue Typen: Null und Bool

sind hinzugekommen zu: Long, Float, String, Array und Proc

Wobei der Typ null auch immer den Wert null hat, nicht 0!

Beispielsweise können die Datum- und Zeitfunktionen null zurück liefern z.B. bei ungültigen Operationen aber auch 0 als gültigen Wert.
 
27.12.2014  
 



Die einzelnen Werte von Arrays können unterschiedlichen Typs sein:

var a=[10,20,"Hallo",10.5,["Test",50,null,60,[true,false,msgbox],true,100],false,200]
 
11.01.2015  
 



Stringspecial: wird auf eine Stringvariable wie ein Array zugegriffen per eckicke Klammern so kann auf jedes einzelne Zeichen zurückgegriffen werden als wäre der String ein CharArray:

var a="test"
print a[2] //gibt s aus

auch Möglich:

print "test"[2] // gibt s aus
 
11.01.2015  
 



Eine Variable darf nicht genau so heißen wie eine Proc oder ein vom Befehlssatz bereitgestelltes Schlüsselwort.
 
24.05.2015  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

8.876 Betrachtungen

Unbenanntvor 0 min.
Erasmus.Herold01.04.2016
Nico Madysa28.03.2016
iF08.03.2016
Micha1233402.03.2016
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

iF (8x)
Michael W. (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie