Een van de fundamentele onderdelen van elk programma is de variabele . De variabele vertegenwoordigt een waarde opgeslagen in het geheugen van de computer . De manier waarop de programma's toegang tot de gegevens is echter belangrijk : door gebruik te maken verzamelingen van gegevens genoemd arrays , wordt het mogelijk voor programmeurs om onbedoelde berekeningen met onbekende waarden in het geheugen te voeren . Door te gaan buiten de grenzen van een array , begint een programmeur in wezen eventueel waarden in geheugen belangrijke functionaliteit kan inhouden voor het programma of het gehele systeem zelf te veranderen . Computer Memory Memory in een computersysteem wordt achtereenvolgens geregeld. Dit betekent dat de variabelen gedeclareerd zullen wonen in het geheugen naast andere variabelen , of andere stukken van de gegevens . Geheugenslots worden gedeeld door hun aard , zodat er voldoende geheugen is gereserveerd voor elk type. Bijvoorbeeld , als een programma bestemt een integer variabele en een variabele karakter , zou twee bytes geheugen voor het aanwijzen integer , dan is een byte van het karakter . Arrays Programmeurs kunnen ook gereserveerd arrays van waarden, die een verzameling van waarden vertegenwoordigen onder dezelfde variabele naam . Dus in plaats van te verklaren vijf verschillende integer variabelen die een lijst vertegenwoordigen , de programmeur verklaart een reeks van vijf waarden , die wonen onder de naam array en zijn toegankelijk door te verwijzen naar de array 's op nul gebaseerde index . Dienovereenkomstig , als een programmeur vernietigt een array , de computer vernietigt genoeg continue geheugen voor het bedrag van de waarden van de array zal houden . Dus, als de programmeur verklaart een reeks van vijf integers , de computer zal vernietiging van het eerstvolgende beschikbare ruimte in het geheugen dat vijf integers kan houden . Arrays en Out of Bounds < br > de programmeur kan verklaren een array en toegang tot haar waarden door de toegang tot de indices die de waarden bevatten . In sommige programmeertalen , zoals C , is er niets om de programmeur niet per ongeluk proberen om een index geen deel van de array. Bijvoorbeeld , kan een programmeur met behulp van de vijf integer -array probeert te krijgen tot een zesde waarde . De programmeur is gegaan " buiten de grenzen " van de array : de waarde niet bestaat als onderdeel van de array , dus nu de programmeur probeert geheugen te benaderen buiten de array Noodzaak . of Bounds controleren Door te gaan buiten de grenzen van de array , wordt de programmeur nu mogelijk manipuleren van gegevens in andere geheugenlocaties . Het meest waarschijnlijk , de programmeur heeft geen idee wat er in dit geheugen locatie : het kan gegevens voor een andere variabele , of een verwijzing plaats naar een andere functie zijn. Als een programmeertaal niet controleert grenzen door zich te verzetten programmeurs toegang tot gegevens buiten een array , kan de programmeur code die kritieke functies vervult herschrijven , of zorgt ervoor dat de huidige programma om onbedoelde gedrag te vertonen . < Br >
|