str1="Hallo wereld!"
Er kan geen String aan grotere Char array toegewezen worden. Echter zijn er trucs voor
gevorderden:
Dim
str_array(3,40)
Dim
Single_str(40)
Single_str="A String"
Str_StrCopy(str_array,Single_str,40);
tweede String
Dit functioneert omdat met een afstand van 40 tekens achter de string in str_array de ruimte
voor de tweede string ligt.
Zichtbaarheid van variabelen
Als variabelen buiten de functies gedeclareerd worden, hebben ze een globale
zichtbaarheid. D.w.z., ze zijn vanuit elke functie aanspreekbaar. Declaraties van variabelen
binnen functies produceren locale variabelen. Locale variabelen kunnen alleen binnen de
functie bereikt worden. Een voorbeeld:
Dim a,b As Integer
Sub func1()
Dim a,x,y As Integer
// globale b is toegankelijk
// globale a is niet toegankelijkbar, deze is door locale a afgedekt
// locale x,y zijn toegankelijk
// u is niet toegankelijk omdat deze locaal hoort tot functie main
End Sub
Sub main()
Dim u As Integer
// globale a,b zijn toegankelijk
// locale u is toegankelijk
// x,y niet toegankelijk omdat deze locaal hoort tot func1
End Sub
Globale variabelen hebben een gedefinieerd geheugenbereik dat tijdens de totale
programmaduur ter beschikking staat.
Bij de start van het programma worden de globale variabelen met nul geïnitialiseerd.
Locale variabelen worden tijdens de berekening van een functie door de variabelen in het
stack aangelegd. Dat betekent dat locale variabelen alleen in het geheugen bestaan tijdens
de tijd dat de functie verwerkt wordt.
Als bij locale variabelen dezelfde naam gekozen wordt als bij een globale variabele, dan ver-
bergt de locale variabele de globale variabele. Zolang zich het programma dan ophoudt in
de functie waar de locale variabele met dezelfde naam gedefinieerd is, kan de globale
variabele niet aangesproken worden.
Static variabelen
Bij locale variabelen kan de eigenschap static voor het datatype gezet worden.
96
As Char
As Char
kopieert Single_str in de
//