WinFuture-Forum.de: Struct Funktionen? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Struct Funktionen?


#1 Mitglied ist offline   centro 

  • Gruppe: aktive Mitglieder
  • Beiträge: 49
  • Beigetreten: 21. Februar 08
  • Reputation: 0

geschrieben 05. März 2008 - 16:23

Also der Prototyp meiner Funktion soll so ausehen: struct Studetn write();
Dann soll ich alle Instanzen aus der main entfernen und ersetzen durch den Aufruf write();
Die Funktion sollte den folgenden Aufbau haben ;
struct Student write()
{
Struct Student person;

return person;
}
Mir ist klar das ,dass was ich in der struct definiert habe jetzt in die Funktion kommt ,
aber ich frage mich:Der Aufruf zur Eingabe eines Namens würde ich in der main machen und nur
die Ausgabe über die Funktion laufen lassen.Wenn ja kann die Funktion nur einen Wert wiedergeben?
Ich komme andieser Stelle nicht weiter.

Wenn ich es mit einer Funktion mache klappt es aber mit struct nicht.


void Student_write();

int main()
{

Student_write();




return 0;
}
void Student_write()
{

char string[256];

printf("Geben Sie Ihren Namen ein:");
gets(string);



printf("Der Name lautet:%s",string);




}

Dieser Beitrag wurde von centro bearbeitet: 05. März 2008 - 16:20

0

Anzeige



#2 Mitglied ist offline   def 

  • Gruppe: aktive Mitglieder
  • Beiträge: 429
  • Beigetreten: 19. Dezember 06
  • Reputation: 7
  • Geschlecht:Männlich

geschrieben 05. März 2008 - 18:40

Ich muss zugeben, dass ich nicht sicher bin, was genau Du willst. Eine Funktion mit dem von Dir gewünschten Prototyp

struct Student write();

wäre im gegebenen Programm sinnlos: write() wäre hiernach eine Funktion, die eine Struktur vom Typ "Student" zurückgibt. In Deinem Programm gibt es aber keine solche Struktur, und sie wäre auch überflüssig, da die einzige Information, die Du speichern willst, ein char-Array ist!

Was genau hast Du vor?

Viele Grüße
Def
Eingefügtes Bild
0

#3 Mitglied ist offline   centro 

  • Gruppe: aktive Mitglieder
  • Beiträge: 49
  • Beigetreten: 21. Februar 08
  • Reputation: 0

  geschrieben 05. März 2008 - 21:40

Also ich habe mich mit struct beschäftigt und jetzt will ich über eine Funktion auf die struct zugreifen .
´Die Elemente der struct sollen in der Funktion sein und nicht wie sonst separat .
Das was ich normalerweise in der main () habe von der struct z.B. struct Student Person;
Person.Zeichen =‘M’;
Soll in der Funktion struct Student write() stehen und als Rückgabewert ist dann Return Person;
gemeint. Und über den Aufruf write(); gebe ich die Werte aus .Die in der struct Student write Funktion
stehen.
Das klappt aber nicht , schaffe es nicht eine struct in einer Funktion anzulegen .
Was anderes ist es wenn ich eine struct habe und die Werte über eine void funktion ausgebe, aber das will ich ja nicht machen .
0

#4 Mitglied ist offline   def 

  • Gruppe: aktive Mitglieder
  • Beiträge: 429
  • Beigetreten: 19. Dezember 06
  • Reputation: 7
  • Geschlecht:Männlich

geschrieben 05. März 2008 - 22:57

Ich blick da trotzdem nicht so ganz durch. Das, was Du beschreibst, klingt sehr nach Objektorientierter Programmierung (OOP), d.h. Du solltest eventuell mal einen Blick auf C++ werfen. Da erstellst Du dann z.B. eine Student-Klasse und erzeugst einzelne Student-Objekte. Die Datenfelder veränderst Du dann nicht mehr direkt, so wie es in C üblich wäre, sondern rufst stattdessen Methoden auf (also Funktionen, die direkt zur Klasse gehören) und diese manipulieren dann die Daten im jeweiligen Objekt.
Sollte ich Dich falsch verstanden haben, versuch bitte nochmal klarer zu sagen, was Du Dir vorstellst, insbesondere was nach Deinem Wunsch in der main()-Funktion dann noch drinstehen soll.

Hinweis:
Streng genommen lässt sich OOP auch in C realisieren, aber wenn man OOP will, dann sollte man auch eine Programmiersprache verwenden, die OOP auch direkt mit geeigneten Sprachmitteln unterstützt. Es gibt auch noch viele andere OOP-Sprachen, die für Dich eventuell auch besser als C++ geeignet sind; suche dafür mal im WWW unter OOP bzw. Objektorientierte Programmierung.

Viele Grüße
Def
Eingefügtes Bild
0

#5 Mitglied ist offline   centro 

  • Gruppe: aktive Mitglieder
  • Beiträge: 49
  • Beigetreten: 21. Februar 08
  • Reputation: 0

geschrieben 06. März 2008 - 00:22

Nett von dir , ich werde mich mal schlau machen wollte auch c++ erlernen kann ja nicht schaden und dann noch eine 3 Sprache .Programmiere gerade an ein paar for scheifen rum.
Melde mich dann morgen noch einmal zu Thema danke .
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0