Pointer und Felder < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) reagiert/warte auf Reaktion | Datum: | 17:34 Mo 26.05.2008 | Autor: | bjoern.g |
Aufgabe | #include <stdio.h>
struct {
int *pElement1;
int *pElement2; } Elemente1, Elemente2;
int main()
{
int i, k=0, *j;
int eFeld[3][3];
for (i=2; i>=0; --i)
for (j=eFeld[i]+2; j>=eFeld[i]; --j, ++k)
*j = i+k;
printf("%d %d %d %d ", eFeld[0][0],eFeld[1][1],eFeld[2][2] , **eFeld);
Elemente1.pElement1 = eFeld[0];
Elemente1.pElement2 = eFeld[1];
Elemente2= Elemente1;
Elemente2.pElement2 = &eFeld[2][0];
printf("%d %d %d, Elemente1.pElement1[1],Elemente2.pElement1[0],Elemente2.pElement2[2]);
for (i=0; i<6; ++i)
Elemente1.pElement2[i] = Elemente2.pElement1[i]+i;
printf("%d %d [mm] %d\n", [/mm] Elemente1.pElement1[2],Elemente1.pElement2[2],Elemente2.pElement2[2]);
return 0;
} |
Hi habe mit Pointer noch massiv Probleme und haben jetzt eine Übungsaufgabe gestellt bekommen mit der ich leider nicht so klar komme !
Ich verstehe die 1. for schleife nicht so
int main()
{
int i, k=0, *j;
int eFeld[3][3];
for (i=2; i>=0; --i)
for (j=eFeld[i]+2; j>=eFeld[i]; --j, ++k)
*j = i+k;
}
was bewirkt denn das --j ? die 1. for schleife ist ja klar aber ich verstehe das nicht so ganz in dem feld steht ja noch gar nix drin?! was wird denn da erniedrigt? und wo wird das *j=i+k zugwiesen
bin wirklich dankbar für hilfe !
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 17:26 Di 27.05.2008 | Autor: | nikito |
hi bjoern,
hast du das abgetippt oder reincopiert? Da fehlen einige Klammern und andere Zeichen. Hast du das mal versucht zu kompilieren? Denn soweit ich weiß kennt C keine default Values für Arrays. Was ist denn die Aufgabe? Sollt ihr vielleicht die Fehler finden *g*. Also "--j" bedeutet das j dekrementiert wird. Und zwar pre-dekrement.
Beispiel:
int j=5;
int x;
int x = --j;
dann hat x den Wert 4 und j den Wert 4, wohingegen bei
int x = j--;
x den Wert 5 und j den Wert 4 hat.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 00:10 So 01.06.2008 | Autor: | bjoern.g |
hm habs einigermaßen gelöst!
aber klammern fehlen da keine weis nicht was du meinst....
ist auch kopiert ! also das programm stimmt schon so
|
|
|
|