bin nun mit dem gesamten C-Tutorial durch.

Gruß
Dave
Gut, dann würde mich erstmal Feedback interessieren. Gut, Schlecht? Was gilt es zu verbessern? Sei ruhig penibel.3VAD_YNCAL hat geschrieben:bin nun mit dem gesamten C-Tutorial durch.
Also ich finde das Tutorial sehr gut. Besonders gut gefallen hat mir z.B., dass du Funktionen wie strcpy() oder strlen() selbst geschrieben hast (Kapitel: Dynamische Speicherverwaltung).Xin hat geschrieben: Gut, dann würde mich erstmal Feedback interessieren. Gut, Schlecht? Was gilt es zu verbessern? Sei ruhig penibel.
Code: Alles auswählen
/* zu schreibende Daten vorbereiten */
struct Segment segment1 = { 0, 0, 10, 0 };
struct Segment segments[] = { { 10, 0, 10, 10 },
{ 10, 10, 0, 0 } }; <-- wird beim Einlesen von datei.bin im letzten Listing nicht ausgegeben
struct Triangle triangle = { 20, 0, 30, 0, 30, 10 };
Code: Alles auswählen
xin@trinity:~/workspace/proggen.org/c/tutorial/file$ gcc binread.c
xin@trinity:~/workspace/proggen.org/c/tutorial/file$ ./a.out
4 Elemente in der Datei
Segment : 0/0 -> 10/0
Triangle: 20/0 -> 30/0 -> 30/10
Segment : 10/0 -> 10/10
(Segment : 10/10 -> 0/0) <-- fehlt
Fertig.
Code: Alles auswählen
writeSegment (file, &segment1, 1); // einzelnes Segment
writeTriangle (file, &triangle, 1); // einzelnes Dreieck
writeSegment (file, segments, 2); // Datenarray schreiben
writeSegment (file, segments + 1, 1); // <-- habe ich noch hinzugefügt
Das Tutorial hat mir auf jeden Fall was gebracht. Zu einem war es eine gute Wiederholung für mich, zum anderen habe ich sogar nochmal an Verständnis bzgl. Zeiger gewinnen können.Xin hat geschrieben:Auf welchem Stand fühlst Du Dich nun? Hat es Dir was gebracht und was möchtest Du als nächstes tun/wissen?
Faktisch liegen Call-By-Reference und - wie ich es genannt habe - Call-By-Pointer - nah beieinander. Wenn es um die Umsetzung geht, ist es sogar identisch.3VAD_YNCAL hat geschrieben:Was ich auch sehr interessant finde, ist die Stelle im Tutorial als es darum geht Zeiger an Funktionen zu übergeben. Da hast du nämlich erwähnt, dass Call-By-Reference in C gar nicht unterstützt wird. Sondern erst bei C++. Und das wusste ich z.B. gar nicht, weil (wie du sagst) in den Büchern immer die Rede von Call-By-Reference ist.
Muss ich mir nachher nochmal ansehen.3VAD_YNCAL hat geschrieben:Mir ist eine Sache beim vorletzten Listing in (Kapitel: Dateien) aufgefallen
Einfache Verschlüsselungen würde ich eher als nächsten Schritt sehen als Accounts. ^^3VAD_YNCAL hat geschrieben:Das Tutorial hat mir auf jeden Fall was gebracht. Zu einem war es eine gute Wiederholung für mich, zum anderen habe ich sogar nochmal an Verständnis bzgl. Zeiger gewinnen können.Xin hat geschrieben:Auf welchem Stand fühlst Du Dich nun? Hat es Dir was gebracht und was möchtest Du als nächstes tun/wissen?
Tja, es gibt eigentlich noch so vieles was ich gerne Lernen möchte. (z.B. Verschlüsselung von Dateien(Algorhithmen)/Zeitroutinen/GUI-/Netzwerkprogrammierung/etc.)Aber ich weiß - eins nach dem anderen.
Man muss dafür Eingaben machen. Eingaben in der Console sind meist nicht ganz ungefährlich, deswegen lasse ich das Thema gerne weg und warte ab, bis entsprechende Libs verfügbar sind.3VAD_YNCAL hat geschrieben:Ich glaube, ich nerve dich langsam mit dieser Accountsgeschichte ;-D
Lerne und bedank Dich, in dem Du die Seite mit Deinem Wissen unterstützt.3VAD_YNCAL hat geschrieben:Was ich noch erwähnen möchte - ich finde diese Seite und dieses Forum wirklich sehr toll. Desweiteren möchte ich mich bei dir für deine Hilfe sehr bedanken.
Natürlich bleibe ich weiterhin am Ball.Xin hat geschrieben:Lerne...
Sehr gerne.Xin hat geschrieben:und bedank Dich, in dem Du die Seite mit Deinem Wissen unterstützt.
Dann fang doch erstmal mit einer Caesar-Chiffre an, wenn Du Dich für Verschlüsslung interessierst.3VAD_YNCAL hat geschrieben:Natürlich bleibe ich weiterhin am Ball.Xin hat geschrieben:Lerne...
Cool - dankeschön für die Tipps. Habe auch schon gleich ein paar Sachen im Netz dazu gefunden.Xin hat geschrieben:Dann fang doch erstmal mit einer Caesar-Chiffre an, wenn Du Dich für Verschlüsslung interessierst.
Anschließend kannst Du Dich mit rot13 beschäftigen oder auch mit der Enigma.
Die Enigma durchaus schon eine Sache, die ein wenig Blick auf anderes wichtiges Thema wirft für dass es (noch) kein Tutorial gibt und für das ich auch noch nie ein Tutorial gesehen habe: Software-Architektur.
Ich habe es vorerst auch gecancelt. Das ist für den Anfang, glaube ich, wirklich etwas zu fett.Xin hat geschrieben:Cancel dieses Übungsprogramm (zumindest vorerst) und schau Dir das C-Tutorial an.
Was meinst du dazu?Xin hat geschrieben:Code: Alles auswählen
struct Relation { struct Relation * Next; unsigned int UserId; unsigned int DataId; }; struct User { struct User * Next; unsigned int UserId; char Username[64]; char Passwort[64]; }; struct Address { struct Address * Next; unsigned int DataId; char Strasse[64]; unsigned int Hausnummer; ... };
Ist es das nicht größtenteils? ^^3VAD_YNCAL hat geschrieben:Du hast letztens folgendes geschrieben:Ich habe es vorerst auch gecancelt. Das ist für den Anfang, glaube ich, wirklich etwas zu fett.Xin hat geschrieben:Cancel dieses Übungsprogramm (zumindest vorerst) und schau Dir das C-Tutorial an.
Ich möchte jetzt aber mal versuchen ein Programm zu schreiben, in dem man zumindest mehrere Benutzer mit Passwort anlegen kann. Die Passwörter der jeweiligen Benutzer sollen mit dem Caesar-Algorhitmus verschlüsselt gespeichert werden. Mehr soll es erstmal gar nicht können. Ich möchte eben wissen, wie man so etwas realisiert um später mein geplantes Übungsprogramm umsetzen zu können.
Ja und Nein.3VAD_YNCAL hat geschrieben:Würdest du mir dabei ein wenig helfen?
Ich find' meinen Vorschlag gut, oder wozu möchtest Du meine Meinung hören?3VAD_YNCAL hat geschrieben: Dein Vorschlag fand ich recht interessant:Was meinst du dazu?Xin hat geschrieben:Code: Alles auswählen
struct Relation...
Ja - stimmt.Xin hat geschrieben: Ist es das nicht größtenteils? ^^
Okay - dann werde ich mein Glück mal versuchen.Xin hat geschrieben:Grundsätzlich solltest Du mit dem Wissen aus dem Tutorial allerdings durchaus in der Lage sein, Dir das zu erarbeiten.
Sorry - hatte mich nicht ganz richtig ausgedrückt. Wollte deine Meinung zu meinem Vorhaben wissen. Aber egal. Dein Vorschlag ist auf jeden Fall gut.Xin hat geschrieben:Ich find' meinen Vorschlag gut, oder wozu möchtest Du meine Meinung hören?