WARNUNG: Bücher von Jürgen Wolf zu C und C++ zum Lernen ungeeignet weil...
-
Hi,
ich habe mir vor Jahren auch mal die erste Ausgabe gekauft und eisern durchgehalten, bis ich zu dynamischen Datenstrukturen kam. Er hat da zwei Strukturen deklariert, angestellter und datum. In angestellter dann einen Zeiger auf datum. So weit so gut.
Er hat ne Funktion eingabe. In ihr deklariert er lokale Variablen atag amon aname usw. Es werden die Variablen gefüllt. Dann ruft er aus dieser Funktion eine Funktion anhängen auf und übergibt ihr alle 8 als Parameter einzeln in der Parameterliste. Dann erstellt er nen Zeiger auf angestellter und allokiert den Speicher für die Struktur. dann kopiert er mittels strcpy den Inhalt der übergebenen Variablen in die entsprechenden Typen der Struktur und hängt die Struktur an die Liste.
Ich dachte, das ist aber ne ganz schöne schreiberei andauernd mit der Parameterliste und warum allokiert er nicht zuerst den Speicher für die Struktur und ruft dann ne Eingabe-Funktun auf und gibt die Inhalte direkt in die Variablen der Stuktur ein.
Na ja, ich habst einfach aufgegeben. Das andere Linux/Unix-Programmierung (hab ich nicht) gibts ein Beispiel - Zugriff auf die Hardware, CDROM. Auslesen des Inhalts einer Musik-CD. Kurz, mindestens bei der Ausgabe der Titel kommen falsche Angaben, wo die Stücke beginnen und wie lang sie sind, das ist alles verschoben, nach hinten glaube ich. Ich hab mal bei ihm im Forum darauf hingewiesen. Ich warte noch auf Antwort
-
Das klingt ja furchtbar. Wieso trennt sich der Verlag nicht von ihm?
-
Diesem "Verlag" ist es offensichtlich egal, was in den Büchern steht. Die hätten vor der Veröffentlichung nur einen einzigen kompetenten Programmierer fragen müssen, ob das Buch etwas taugt.
"C von A bis Z" ist teilweise so schlecht, dass es lustig ist.
Ungekürztes Zitat aus Kapitel 14.5 »free()« – Speicher wieder freigeben (nicht zu verwechseln mit 14.10 »free()« – Speicher wieder freigeben aus demselben Buch) mit einem Widerspruch:
Jürgen Wolf schrieb:
Der Speicher wird übrigens auch ohne einen Aufruf von free() freigegeben, wenn sich das Programm beendet.
Hinweis:
Zwar wird generell behauptet (und es ist auch meistens der Fall), dass bei der Beendigung eines Programms das Betriebssystem den reservierten und nicht mehr freigegebenen Speicher selbst organisiert und somit auch wieder freigibt, aber dies ist nicht vom ANSI/ISO-Standard gefordert.
-
Etwas unglücklich formuliert, im Kern stimmts doch aber.
-
Furchtbar schrieb:
Das klingt ja furchtbar. Wieso trennt sich der Verlag nicht von ihm?
Weil es den Verlag nicht interessiert. Wennst ne Info an den Verlag schickst, bekommst maximal ne Antwort "Leiten wir weiter".
Solche Bücher werden gern von "Dozenten" verwendet, die selber keine / kaum Ahnung von C++ haben. Und woher sollen DIE wissen, das in dem Buch Mist steht?
-
Ich habe mir jetzt nicht mehr alles durchgelesen.
Muss aber meine Erfahrungen mit preis geben.
Ich habe mir dieses Buch gekauft, nicht um aus den 1200 Seiten (Tutorial) etwas zu lernen weil ich Seite für Seite durchwälze. Sondern um es als eine zweite alternative zum gelesenen Buch zu haben. Die 1200 Seiten als tutorial wären auch etwas zu hoch gegrffen. da reichen auch die 300 Seiten von Kerningham und Dennis Richie.
Worum geht es mir geht.
Als ich vor einem Jahr für meine damalige Schule was c programmieren musste, bin ich ganz schnell an meine grenzen gestoßen.
auf der einen Seite hat man in jedem zweiten Buch CIN und COUT befehle die mit printf und getline nichts auf den ersten blick zu tun haben. Auf der Anderen Seite wird in vielen Büchern eine Schreibweise verwendet, die beim C erlernen nicht mehr weiter hilft. dabei meine ich die Auftrennung der Funktionen mit der :: Systematik.
Ich bin Ehrlich .... das ist kein C und ich bin kein Programmierer. Ich habe zwar spaß daran aber meine Brötchen möchte ich anders verdienen.Als es in die Grafische Programmierung ging, gerät man an die nächste Schallgrenze.. denn alle alten Werke sind ab dem Zeitpunkt Nutzlos.. schluss mit Borland C++ wenn man einen MS Compiler nutzt. Und die besten Kommentare aus den Foren sind immernoch nicht nutzbar, denn man schreibt ein WIn32 Programm und kein CLI Programm. Bei Java hat man diese Probleme nicht so stark. das stimmt. deswegen ist es wahrscheinlich einfacher zu erlernen. aber Wenn man explizid C lernen möchte und man genug von solchen Meinungen hat, dann ist dieses Buch immernoch besser (auch als Nachschlagewerk) als viele der Kommentare in jedem Forum.
Hinzu kommt noch dass es wirklich wenig Nachschlagewerke gibt. so genau schaue ich mir da den Code nicht an.. wie oben beschrieben 1200 Seiten sind auch da etwas zu viel.
Viel erfolg beim Bücher suchen.
-
Du verwechselst hier scheinbar C mit C++. Das sind trotz Überschneidungen zwei verschiedene Sprachen.
-
W-E schrieb:
denn alle alten Werke sind ab dem Zeitpunkt Nutzlos.. schluss mit Borland C++ wenn man einen MS Compiler nutzt.
Das hat nichts mit alt zu tun. Das sind einfach zwei verschiedene Systeme, von beiden gibts aktuelle Versionen.