Die folgende Grammatik G
Gesucht ist eine zu G
Wie sieht unter diesen Bedingungen
der abstrakte Syntaxbaum für
fiwufiw
Untersuchen Sie, ob
G1, G2, G3
Nach welcher Regel bestimmt man,
ob ein Ausdruck
Wie werden die folgenden Operationen
für Typen in Programmiersprachen realisiert?
In Java gibt es keine direkte Realisierung der Vereinigung,
was wird stattdessen empfohlen?
Für das Ada-Programm:
Zeichnen Sie die Frames mit allen Einträgen und Verweisen
zu dem Zeitpunkt direkt vor dem ersten Aufruf von
Wie wird auf die Werte von
Für folgende Deklaration:
Geben Sie die Ausführungsschritte sowie die resultierende Speicherbelegung an,
falls zur Parameterübergabe benutzt wird:
while (P) { A; if (Q) { B; } C; }
Das Spur-Alphabet ist
{A, B, C, P0, P1, Q0, Q1}
A :
P0
f(x)
korrekt getypt ist?
(Ohne Berücksichtigung von Vererbung oder Generizität.)
f
den Typ ... hat
x
den Typ ... hat,
f(x)
... .
with Ada.Text_Io; use Ada.Text_Io;
procedure Main is
X : Integer := 3; Y : Integer := 2;
procedure P (X : Integer) is
procedure Q (Y : Integer) is
procedure R (X : Integer) is
begin Put_Line (Integer'Image (X+Y)); end R;
begin if Y > 0 then P(X-1); else R(X+Y); end if; end Q;
begin if X > 0 then Q(X-1); else P(X-Y); end if; end P;
begin P (X-1); end Main;
Put_Line
.
X
und Y
zugegriffen,
die in Integer'Image(X+Y)
benötigt werden?
int a [] = { 1,2,0 }; void p (int x, int y) { a[y] = x; x = y; }
betrachten wir den Aufruf p(a[0], a[1])
.
Für die Deklarationen:
class C { } class D extends C { }
static void p (Object x, C y) { System.out.println ("1"); }
static void p (D x, C y) { System.out.println ("2"); }
static void p (C x, Object y) { System.out.println ("3"); }
Beschreiben Sie, wie die Überladung für die folgenden Aufrufe aufgelöst wird:
p (new D(), new D());
p (new C(), new C());