PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [Tutorial] C Datenstrukturen


blue
16.01.07, 19:33:18
Nabend,

da in drei Wochen meine Grundlagen der Informatik und Programmierung Klausur bevor steht, beschäftige ich mich gerade mit dem schwierigsten Thema daraus: Den Datenstrukturen.


Dazu kommen noch Listen, Bäume und Hashtables.
Bisher habe ich allerdings nur die Datenstrukturen zusammengefasst und niedergeschrieben.


Wer sich interessiert, der sollte einen Blick drauf werden.

Wäre für ein bischen Feedback allerdings auch sehr dankbar!

Liest es euch also mal durch! *g*

low
16.01.07, 20:18:14
Ich bezweifle, dass ich Dir irgendein anderes Feedback als "Wat is???" geben könnte. :D

blue
16.01.07, 21:22:40
Ich bezweifle, dass ich Dir irgendein anderes Feedback als "Wat is???" geben könnte. :D

Muss ich wohl mal auf Zahl warten :D

Ne, aber auch für die Form würde ich gern Feedback haben.
(Rechtschreib-, Grammatik-, Form-, Strukturfehler ..)

/€1:

Edit-Funktion ist immer was gutes :D

3rd Disciple
17.01.07, 13:28:14
Ich gucks mir bei Gelegenheit an. Hab in 3 Wochen selbst ne GdP-Klausur.

Lord_Pinhead
17.01.07, 15:53:59
Punkt 3

Man kann Datenstrukturen optimieren, indem sie performant sind, oder nur wenig Speicherplatz gebrauchen.


sollte das nicht lauten

Man kann Datenstrukturen dahingehend optimieren, sodass sie performant sind oder nur wenig Speicher benötigen.


Speicher weil man ja Arbeitsspeicher und Festplattenspeicher meinen könnte

Bei Punkt 4, malloc() müsstest du einen Maximalwert definieren und vielleicht darauf hinweisen das Dynamische Speicherverwaltung falsch eingesetzt ein Risiko sein kann, die Rede ist von Buffer Overflows. Rein Theoretisch würde aus:


struct Telefon Eintrag;

ein

struct Telefon Eintrag[20];


Es ist immernoch Dynamisch und ein Buffer Overflow dürfte kein Problem mehr darstellen (Quelle: C Lernen von O´Reilly)

Weiter bin ich nicht gekommen, Kollege wartet. Schreib nachher noch was.

blue
17.01.07, 16:00:35
struct Telefon Eintrag[20];

Ist immer noch statisch. Das Array kann nachtragend mit realloc() vergrößert oder verkleinert werden.

Aber dennoch danke schon mal ;)
Das Script ist eh noch lange nicht fertig, aber ist auch nur eine Frage der Zeit.

C/C++ - Von den Grundlagen zur professionellen Programmierung (http://www.amazon.de/C-C%2B%2B-Grundlagen-professionellen-Programmierung/dp/3898426440/sr=8-8/qid=1169046435/ref=sr_1_8/303-9680163-1126605?ie=UTF8&s=books) von einem Doktor Prof. Kaiser. Meinem Dozenten ;)

Lord_Pinhead
17.01.07, 18:00:49
Hm, stimmt, das Array wird statisch angelegt. realloc() kann immernoch ausgetrickst werden. Bleibt nur das man das Feld mit einer If-Abfrage prüft:

Ungetestet

if ((String = (char *) malloc(StringSize)) == NULL)
{
printf("\nSpeicherfehler.");
exit(1)
}


Wenn nicht genug Speicher bereit gestellt werden kann, gibt malloc eigentlich immer Null zurück. Also müsste es so funzen.

Übersetzt du es dann in Latex oder lässt du es als in Word so

blue
17.01.07, 18:02:53
Hm, stimmt, das Array wird statisch angelegt. realloc() kann immernoch ausgetrickst werden. Bleibt nur das man das Feld mit einer If-Abfrage prüft:

Ungetestet

if ((String = (char *) malloc(StringSize)) == NULL)
{
printf("\nSpeicherfehler.");
exit(1)
}


Wenn nicht genug Speicher bereit gestellt werden kann, gibt malloc eigentlich immer Null zurück. Also müsste es so funzen.

Stimme dir voll zu! Allerdings gehts mir in dem Script nicht darum zu zeigen wie man ordentlich Programmiert, sondern wie man mit Strukturen, Listen .. umgeht. Von daher lege ich da keinen Wert drauf ;)

Lord_Pinhead
17.01.07, 21:21:23
Naja, aber man sollte vielleicht darauf hinweisen das in vielen Bereichen Tücken stecken ;)

thegreathawk
18.01.07, 01:55:48
Habs bis jetzt noch nicht gelesen, aber der Thread kommt mir ganz recht :D

Ich mach ein Fernstudium zum PC-Betreuer. Da kommt dieses Thema garantiert noch vor. Gut zu wissen, das es ein paar "Cracks" unter Spieleplanetariern gibt :D

Hab mich schon schwer getan, mit dem Stellenwertsystem und dem Segmentierten Speicher Adressen...

Lord_Pinhead
18.01.07, 18:12:06
Naja, sowas musste ich in meiner Ausbildung ja auch lernen, hab mich aber lange Zeit nicht mehr wirklich damit beschäftigt bis vor ein paar Monaten. So ein Crack bin ich nicht ;)

blue
18.01.07, 18:40:32
Naja, sowas musste ich in meiner Ausbildung ja auch lernen, hab mich aber lange Zeit nicht mehr wirklich damit beschäftigt bis vor ein paar Monaten. So ein Crack bin ich nicht ;)

Wer spricht denn von dir?! :fin:

Lord_Pinhead
20.01.07, 15:23:18
Hrhr, Blue is ja gar nicht eingenommen :D

blue
20.01.07, 16:13:54
Hrhr, Blue is ja gar nicht eingenommen :D

Auf keinen Fall, ich hab von dem ganzen Shice keine Ahnung .. allerdings weiß ich wo's steht :D

Nein, ich sehe mich absolut nich als Crack. Studiere zwar angewandte Informatik und hab Kenntnisse einiger Sprachen, allerdings wird es wohl noch einige Jahre dauern, bis ich in der Lage bin mich als Crack zu behaupten ;)