Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Programozási nyelvek típusossága
2
Típus nélküli nyelv A változó deklarációjakor még nincs típusa.
A változó típusa csak beolvasáskor derül ki. Csak futás közben derülhetnek ki a hibák. Pl.: x:=x+y utasítás lefordul, de futás közben x egész számot, y szöveget kap értékül Pl.: Assembly A változó deklarációja: A programegység deklarációs részében a változó nevének felsorolása. Egyes nyelvekben nincs kötelező deklarációs rész, az utasítások között bárhova beírható a változó használata előtt.
3
Típusos nyelv Az egyszerű típusok deklarációja nem kötelező, csak az összetetteké. Bizonyos típusok csak futás közben derülnek ki. Hibák is futás közben derülnek ki. Pl.: a program beolvas egy számot az N változóba, majd létrehoz egy tömböt (számsorozatot), aminek N darab eleme lesz Ha N=3, akkor rendben, de ha N=2,3, akkor a számsorozatot nem tudja létrehozni. Pl.: JavaScript, Basic
4
Erősen típusos nyelv (Szigorúan típusos nyelv)
A változókhoz fordítás előtt kell típust rendelni, a programegységek deklarációs részében. A változók típusa a program futása során nem változhat meg. Már a fordítóprogram jelzi: a típusegyezési hibákat a típusnak nem megfelelő műveleteket Pl.: Java, C#, C++, Pascal
5
Milyen esetben lehetséges az a:=b értékadás?
Típuskompatibilitás Név szerinti a két változó típusának a neve egyezik nincs neve a típusnak, de egy sorban lettek deklarálva pl.: Pascal, Delphi Szerkezet szerinti a két változó típusának a szerkezete egyezik, lehet más a nevük pl.: C++ Objektumosztályoknál erre még visszatérünk.
6
Milyen esetben lehetséges az a:=b értékadás?
Típuskényszerítés valós:=egész egész:=valós (csonkítással, nem minden nyelvben) szöveg:=karakter Vannak típus-átalakító függvények, amikkel megoldható pl. a beolvasott szöveg számmá alakítása. típus-átalakító függvények, pl.: Beolvasás után: szöveg szám (kiválasztott fajta) Kiírás előtt: szám szöveg
7
Memóriakezelés Dinamikus Statikus
A változó a program futása során a memóriában ugyanazon a helyen marad. A változóhoz rendelt memória terület mérete nem változik a program futása során. Pl.: egész típus (minden nyelvben) Dinamikus A változó a program futása során a memóriában más-más helyen fordulhat elő. A változóhoz rendelt memória terület mérete nőhet és csökkenhet is a program futása alatt. Pl.: szöveg típus (Basic) Félstatikus: Futás közben a változóhoz tartozó memóriaterület nőhet, de nem csökkenhet.
8
Hozzáférési jog lekérdezhető módosítható memóriában Bemenő adat igen
nem konstans Kimenő adat változó Be-kimenő adat A programegységek paraméterlistáján a hozzáférési jog jelölendő. A konstans paramétereknek az értékét kapja meg a programegység egy új memóriaterületre másolva, így az eredeti értéket nem módosíthatja. A változó paramétereknek a memóriacímét kapja meg, így az értékük módosítható.
9
Hatáskör A programkód azon része, ahol az adathoz a hozzáférés megengedett. az a programegység, amiben az adatot létrehoztuk és az abba beágyazott programegységek
10
Élettartam A futási időnek az a része, amiben az adat azonosítója végig ugyanazt az objektumot jelöli. az a programegység, amiben az adatot létrehoztuk és az abba beágyazott programegységek valamint a meghívott programegységek végrehajtási ideje (bár ekkor nem hozzáférhető)
11
Láthatóság A programkódnak az a része, amiben az adat azonosítója végig ugyanazt az objektumot jelöli. az a programegység, amiben az adatot létrehoztuk kivéve azokat a beágyazott programegységeket, amik tartalmaznak azonos nevű adatot
12
Globális változó Lokális változó a főprogramban létrehozott változó
Hatásköre: minden programegység Élettartama: a program teljes futási ideje Lokális változó egy programegységben létrehozott változó Hatásköre: az adott programegység és az abba ágyazott programegységek (ha vannak) Élettartama: az adott programegység futási ideje alatt aktivizálódik Lokális változó élettartama: Ha statikus típus, akkor a teljes program alatt létezik, de csak az adott programegységben használható.
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.