Problem mit Länger einer Zeichenkette
-
Fishmasta schrieb:
jap lese c++ von a bis z
Autsch.
Fishmasta schrieb:
die aufgabe ist aber von nem dozenten
Autsch.
Fishmasta schrieb:
da muss es doch dann auch eine lösung für geben oder nicht?
Ja, std::strlen(). (Oder selbst machen bis die Nullterminierung kommt.)
-
Fishmasta schrieb:
jap lese c++ von a bis z
Merkt man
. Wenn du noch nicht genug Angst bekommen haben solltest, dass man an deinen Fehlern erkennen kann, welches Buch du liest:http://www.c-plusplus.net/forum/272350
http://www.c-plusplus.net/forum/p2105011#2105011
-
Das du von Jürgen Wolfs Busen nuckelst, kann man schon an der schlichten Tatsache deiner Funktionsdeklaration/definitionen erkennen:
-Deklaration vor der Main (ist ja sowieso Pflicht)
-Definition dahinter.Findet er übersichtlicher, da er dann ich zitiere "einen besseren Überblick über den Programmablauf" hat. Desweiteren:
- C-Strings,
- Eine Funktionsdeklaration, aber ohne Definition (
)
- 'cout<<endl<<endl' ? Macht JW übrigens selbst nicht so selten.
-
Hacker schrieb:
-Deklaration vor der Main (ist ja sowieso Pflicht)
-Definition dahinter.- 'cout<<endl<<endl' ? Macht JW übrigens selbst nicht so selten.
Was ist an diesen 3 Dingen so schlimmes dran?
-
Gugelmoser schrieb:
Hacker schrieb:
-Deklaration vor der Main (ist ja sowieso Pflicht)
-Definition dahinter.- 'cout<<endl<<endl' ? Macht JW übrigens selbst nicht so selten.
Was ist an diesen 3 Dingen so schlimmes dran?
Ist nicht wirklich schlimm, ist aber unnötig umständlich, daher macht es sonst kaum jemand. Sie gehören aber zum typischen Wolf-Stil. Es gehören auch noch andere Kleinigkeiten dazu, obiges Programm ist praktisch ein Musterbeispiel für diesen Stil, das direkt so in C++ von A bis Z stehen könnte (sogar inklusive der Fehler
).
-
naja das doppelte endl hab ich nur verwendet um es in der konsole übersichtlicher zu gestalten \n hätts ja auch getan ist aber egal was man davon verwendet oder?
was wäre denn ein "guter" stil?
die funktionen nur ein mal und dann vollständig zu coden?
dann vor oder hinter der main?welche bücher könnt ihr denn empfehlen?
habe mir das c++ von a bis zu ja aufgrund der guten bewertungen gekauft aber darauf scheint ja wohl kein verlass zu sein
gut das samstag schon die klausur ansteht -.-
-
Diese Beiden:
-Der C++ Programmierer von Ulrich Breymann. http://www.amazon.de/exec/obidos/ASIN/3446416447/marcbackccecke
-C++ Primer 4.Auflage (auf Deutsch nur noch schwer zu erhalten) http://www.amazon.de/exec/obidos/ASIN/382732274X/marcbackcceckeFishmasta schrieb:
was wäre denn ein "guter" stil?
Dazu sagt hoffentlich SeppJ noch was dazu

PS: Hier noch der passende Link: http://www.c-plusplus.net/forum/251551
-
Gugelmoser schrieb:
Fishmasta schrieb:
was wäre denn ein "guter" stil?
Dazu sagt hoffentlich SeppJ noch was dazu

Keine dummen Vordeklarationen von Funktionen. Keine Deklarationen wo nichts hinterherkommt. Keine C-Strings! Kein Postfix in Schleifen. Kein endl wo '\n' gemeint ist. Kein "\n" wo '\n' gemeint ist. Keine .h-Standardheader. Ungefähr halbsoviele Zeilenumbrüche. const-Korrektheit. Keine signed-unsigned-Vergleiche. Das was die Funktion tut und wie sie aufgeteilt ist, mag ich auch nicht, aber das wäre komplex zu erklären. Außerdem wette ich, dass der Threadersteller alle Variablen am Anfang deklarieren würde, wenn er denn welche hätte.
Ja, das ist eine sehr überkritische Liste. Aber sie enthält nicht nur Sachen die man besser machen sollte, sondern auch typische, relativ unkritische Sachen, die Jürgen Wolf anders macht als andere Leute und woran man ihn erkennen kann. Das ist natürlich auch ein leichter Kritikpunkt, denn wenn man sich nicht an den üblichen Stil einer Sprache hält, dann fällt man auf. Es kommt ja auch keiner und nennt eine Wegwerf-Laufvariable in for-Schleifen plötzlich "Laufvariable" statt "i", obwohl immer sprechende Namen gepredigt werden. Das wäre eben einfach unüblich und zeigt, dass man nicht die Standardwerke gelesen hat.
-
+1

-
Am Traurigsten ist auch die Reihenfolge der ersten 7 Kapitel, find ich irgendwie verkehrt:
1. Einleitung (Hello World Programm, aber nicht erklärt)
- Basisdatentypen
- Präprozessor-direktiven
- ...2. Zeiger, Referenzen, Strukturen, Enumerierungen, usw.
Soweit so gut.
- EIN RIESIGER TEIL ZU C-STRINGS (obwohl vielleicht nicht so riesig, aber er erklärt es ausführlich mit allen Funktionen, und auch C-String Tabellen usw)
- Dynamisch Speicher allokieren mit NEW + DELETE3. Namensräume
4. Objektorientierung (Sein ganzer verfluchter Mist, inkl. Der Teil aus 'Das Rätsel', schlechte Beispiele zu Objektorientierung -> Wurstbrot, Supermarkt, ..)
5. Großes Kapitel zu STL (auf die neueren Sachen geht er nicht ein - obwohl er sie nennt, weiß zwar nich' aber ist Bitset nicht schon länger Standard ?
Aber sehr Groß mit allen Funktionen und Standard Containern. Wenn auch schlecht erklärt.)
6. Exceptions
7. UND HIER KOMMEN C++ STANDARD FUNKTIONEN.
- Filestreams
- Stringstreams
- I/O Streams
- C++-STRINGS
- Complex
- Vallarray, Slice + Gslice
- ...Dieses Kapitel kam entschieden zu spät.
C - Strings (Edit: und C-Arrays, und new und delete) hätte man gar nicht antatschen dürfen.
Und Exceptions hätten meiner Meinung nach auch deutlich früher kommen müssen.
Es gibt noch 3 Weitere Kapitel mit GUI und Socket-Programmierung sowie Boost, UML und GUTEM CODESTIL, ALSO BITTE
! Das hab ich mir garnich' erst angesehen.Und ganz klar zu viel Beispiel Code. Manchmal Seitenlang, ich habs mir zuerst angesehen, dann die nächsten male einfach übersprungen.
-
Hacker schrieb:
Und ganz klar zu viel Beispiel Code. Manchmal Seitenlang, ich habs mir zuerst angesehen, dann die nächsten male einfach übersprungen.
Für mehr als ein Überfliegen scheint der Code auch nicht geeignet

-
Und macht das Buch so lang, und so teuer.

Edit: Wie ein Kenner schon Jürgen Wolfs Gedankengang nachzitierte:
"Scheisse, ich bekomm mein Buch nicht voll
Schnell noch mal 300 Seiten unnötigen, unverständlichen Quellcode reinschreiben"
Man denkt, was so viel kostet, muss qualitativ sein.

Im Forum kommen haufenweise Leute an, und belabern einen mit Problemen über mehrdimensionale C-Arrays, C-Strings, und falschen Ansätzen mit der Lösung von Problemen.
Echt bitter.
Man sollte den Typ wegen Irreführung anzeigen lassen
-
Ich glaube das Problem ist, dass das Buch echt immer wieder gute Bewertungen von Leuten bekommt, die es selbst nicht besser wissen. Das Buch wird z.B. bei Amazon immer als toll und leicht verständlich beschrieben, und ich glaube schon, dass J.W. seine Fehler sehr verständlich an den Mann bringt.
-
Tachyon schrieb:
Ich glaube das Problem ist, dass das Buch echt immer wieder gute Bewertungen von Leuten bekommt, die es selbst nicht besser wissen. Das Buch wird z.B. bei Amazon immer als toll und leicht verständlich beschrieben, und ich glaube schon, dass J.W. seine Fehler sehr verständlich an den Mann bringt.
Dann wird es denke ich Zeit, dass diejenigen, die es besser wissen, schlechte Bewertungen schreiben, und zwar am besten kollektiv.
Wenn 10 Leute eine negative Rezension schreiben, hat das Buch schon nur noch zwei statt vier Sterne

-
Ja, Amazon will es natürlich loswerden.
Dann schreibt es auch, ich zitiere:Jürgen Wolf schreibt und schreibt und schreibt. Und schreibt hoffentlich immer weiter. Denn was er da nicht nur aus dem Bereich Linux oder Programmierung abliefert, gehört zum Besten, was Computerbücher sein können (FAIL, es gehört in den Müll): Adobe Photoshop Elements 7: Das umfassende Handbuch , GIMP 2.6 für digitale Fotografie, Qt 4 - GUI-Entwicklung mit C++: Das umfassende Handbuch oder Linux-Unix-Programmierung: Das umfassende Handbuch . Aber er pflegt auch die Aktualität seiner bereits verfassten Bücher und liefert nun die 2. ,aktualisierte Auflage seines Klassikers (ja, Klassikers für schlechte, irritierende Fachliteratur) von 2006 C++ von A bis Z: Das umfassende Handbuch.
Richtig, C++ ist ein weitverbreitetes Thema und eben so weit verbreitet sind Bücher dazu - aber: Wolf. Basta. Wolf macht den Unterschied. (Ja, er ist scheisse.) Klar, er behandelt neben ANSI-C++ (Das Postfix muss weg) auch STL, Boost, Socket- oder(das muss und heißen) GUI-Programmierung bis hin zu UML, aber letztendlich macht die Mischung aus Einsteiger-(FAIL) und Profibuch den Unterschied. Und seine verständliche(
FAIL ) und dennoch professionelle Art (FAIL) zu beschreiben, zu erklären und zusammenzufassen (FAIL).Als blutiger Einsteiger muss man zwar schon Gas geben und sich konzentrieren(ABER HALLO!!
), um dabei zu bleiben, aber es ist machbar(FAIL) und Wolf setzt die Hürden gerade so hoch, wie es nötig ist (um die Leute vollends aus dem Ring zu schmeissen). Nach den Grundlagen, die etwas mehr als 100 Seiten umfassen (und die doppelt solangen Quellcodes), kommen die höheren und fortgeschrittenen Datentypen, gefolgt von Gültigkeitsbereichen, speziellen Deklarationen und Typenumwandlungen. Nach der Pflicht die Kür: die objektorientierte Programmierung(ala JW, also unbrauchbar)! Und dann weiter mit den Sonderthemen: Templates und STL, Exception-Handling, die C++-Standardbibliothek, gefolgt von einem Kapitel zum C++-Programmieren an sich. Zuletzt dann die Netzwerkprogrammierung und Cross-Plattform-Entwicklung in C++ sowie die GUI- und Multimediaprogrammierung in C++.Umfassend rund. Und das für Einsteiger als auch für Profis, die nachschlagen wollen. Dazu eine DVD mit OpenBooks (etwa zu C) (Dieses Buch ist auch nur schlecht, soweit ich gehört hab) und den Quellcode der Beispiele(die kein Mensch habem will/ braucht/ kein Anfänger sehen darf). Inzwischen, und nicht nur mit C++ von A bis Z in der 2. Auflage, dürfte Jürgen Wolf seinem Traum von einem ruhigen Leben im Westen Kanadas, das er mit dem Bücherschreiben auf der Veranda verbringt, ein sehr großes Stück näher gekommen sein. Egal wo er ist: Hauptsache er hört nicht auf zu schreiben!(FAIL, FAIL FAIL!
) --textico.de/Wolfgang TreßJAUL!

Was geht hier ab !?
Sind die alle des Wahnsinns fette Beute ?
Hoffentlich schliesst sich keiner seinem Rudel an ...
Edit: Sorry für die ganzen bearbeitungen, aber ich find immer mehr ...
Wieso darf man nur 10 Smilies ? Ich brauch mehr um meine Gefühle ausdrücken zu können !