Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Zeiger Aufgabe von Anfängerin

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
15.06.2009, 19:32 Uhr
Biene83



Hi Leute,

ich sitze seit Stunden vor meinem Laptop und programmier in C. 2 Aufgaben zum Thema "Zeiger" habe ich schon gelöst. Doch die dritte geht gar nicht.
Werde noch verrückt! Kann mir jemand helfen? Einfach in den ??? was einsetzen.
Ansonsten expoldiert gleich mein Köpfchen...
Wäre super nett von euch.

Lg
Biene



Programm structzeiger (C-Kurs, Serie 7, Aufgabe 3)


Stoff: bis Kap. 6.5
Lösungsdateien: structzeiger.c
gcc-Aufruf: gcc -o structzeiger structzeiger.c

Programm structzeiger ist eine Übung für den Zusammenhang zwischen Zeigern und Strukturen.

Gehen Sie von folgendem Programm aus:



C++:
#include <stdio.h>

struct Person {char name[20]; int alter;};

#define FORMAT ??? /*EINSETZEN: Geeignetes Format für printf*/

main() {
struct Person *px, p1 = {"Hans", 15}, p2 = {"Rike", 7};

printf(FORMAT, p1.name, p1.alter);
printf(FORMAT, p2.name, p2.alter);

++p2.alter; /*Rike wird 1 Jahr älter*/
printf(FORMAT, ???, ???); /*EINSETZEN: Ausdrücke mit p2*/

px = ???; /*EINSETZEN: Zeiger auf p1*/

???; /*Hans wird 1 Jahr älter*/
/*EINSETZEN: Ausdruck mit px*/

printf(FORMAT, ???, ???); /*EINSETZEN: Ausdrücke mit px*/

px = ???; /*EINSETZEN: Zeiger auf p2*/
printf(FORMAT, ???, ???); /*EINSETZEN: Ausdrücke mit px*/
}



Das Programm soll ausgeben:


Code:
Hans ist 15
Rike ist 7
Rike ist 8
Hans ist 16
Rike ist 8


Dieser Post wurde am 17.06.2009 um 08:32 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
15.06.2009, 21:25 Uhr
Hans
Library Walker
(Operator)


Hi,

und was ist jetzt genau Dein Problem? - Einen Format-String für printf zu finden? - Oder was anderes? - Das musst Du uns schon genauer erklären, dann können wir auch helfen. Aber Deine Hausaufgaben machen wir nicht für Dich, sind ja schliesslich Deine Hausaufgaben, nicht unsere

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
16.06.2009, 09:04 Uhr
ao

(Operator)


Ist doch klar, was sie will: Die printf-Steuerung und das Umbiegen des Struktur-Zeigers.

Fangen wir mit dem printf an. FORMAT muss dafür sorgen, dass zuerst der Name (ein String), dann das Wort " ist " und dann eine Ganzzahl (das Alter) ausgegeben wird. Mit welchen Format-Specifiern zeigt man "String" und "Ganzzahl" an?

Dann: printf (....), Ausdrücke mit px: p1 und p2 SIND Strukturen vom Typ Person, px ZEIGT auf eine solche Struktur. Es heißt also nicht px.name, sondern ...?

Und nun die Zuweisung von px. Wie war das noch mal mit den Zeigern?
int i = 5;
int *p;
Wie lässt man p auf i zeigen?
Und jetzt die Transferleistung: Wie lässt man px auf p1 zeigen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
16.06.2009, 23:02 Uhr
Hans
Library Walker
(Operator)



Zitat von ao:
Ist doch klar, was sie will: Die printf-Steuerung und das Umbiegen des Struktur-Zeigers.


Das ist mir schon klar, das wollte ich aber von ihr selbst wissen.
Ausserdem erscheint mir das Programm so komplett vom Lehrer vorgegeben, weil in den Kommentaren hinter den ??? ja steht, was da hin soll. Da besteht die Transferleistung eigentlich nur noch darin, das aus den Lehrunterlagen (oder einem Buch) abzuschreiben, bzw. zu übertragen.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: