Paradygmaty programowania/Test 2: Semantyka zmiennych

From Studia Informatyczne

Test 2

Program może zawierać dwie różne zmienne o tej samej nazwie, gdy są to zmienne:

alokowane dynamicznie

globalne

lokalne w dwóch różnych blokach

lokalne w tym samym bloku

L-wartością nazywamy:

bieżący adres zmiennej

wynik wyrażenia arytmetycznego

indeks tablicy

wartość zmiennej po dokonaniu podstawienia

Wiązanie statyczne:

może zmienić się w trakcie wykonania programu

następuje w trakcie wykonania programu

następuje przed wykonaniem programu

odnosi się tylko do zmiennych globalnych

Wnioskowanie o typie zmiennej jest najczęstsze w językach:

funkcyjnych

logicznych

obiektowych

nie występuje w żadnym przyzwoitym języku

Okres życia zmiennej to:

czas pomiędzy alokacją zmiennej a jej dealokacją

czas od uruchomienia programu do chwili wykonania na tej zmiennej delete, free itp.

obszar kodu pomiędzy deklaracją zmiennej a końcem zawierającego ją bloku

czas od pierwszego podstawienia pod tę zmienną do ostatniego jej użycia w programie

Obiekty w Javie są alokowane:

dynamicznie, na stercie

dynamicznie, na stosie

dynamicznie, na stosie lub na stercie (decyzję podejmuje kompilator)

statycznie

Spośród wymienionych tu języków najbliższy silnemu typowaniu jest:

C

C++

C#

PHP

Silne typowanie bywa ,,osłabiane przez:

jawne konwersje typów

niejawne konwersje typów

dynamiczne sprawdzanie zgodności typów

statyczne sprawdzanie zgodności typów

Podtyp to:

typ powstały przez ograniczenie zakresu istniejącego typu, zgodny z owym typem

nowy typ oparty na już istniejącym, niezgodny z dotychczasowym

typ tablicowy, w którym ograniczono zakres indeksów

jedno z pól unii

W języku C++ dostęp do przesłoniętej zmiennej nielokalnej można uzyskać za pomocą operatora:

:: (dwa dwukropki)

. (kropka)

* (gwiazdka)

-> (strzałka)