Welche Bücher sind für Anfänger geeignet?
-
tja, das problem ist halt, dass mir hier jeder was anderes empfiehlt, und es keine "übereinsimmungen" gibt, daher frag ich halt nochmal nach.
weiß jetzt net, warum ich ein troll sein soll, nur weil ich nochmal nachfrage?
-
@cooky
Kannst Du mir bitte die nach Deiner Meinung korrekte Beschreibung dieser Begriffe geben.
Ich habe damit nämlich auch so meine Probleme.
-
natürlich bin ich mir bewusst, dass "The C Programming Language" schon mal angegeben wurde, allerdings ohne jegliche begründung, warum der nutzer mir gerade das buch empfiehlt.
das tutorial, zu dem Shiba einen link gepostet hat, ist übrigens gut.
-
--- schrieb:
natürlich bin ich mir bewusst, dass "The C Programming Language" schon mal angegeben wurde, allerdings ohne jegliche begründung, warum der nutzer mir gerade das buch empfiehlt.
Weil's das beste ist und weil, ach informiere dich mal wer die Programmiersprache C entwickelt hat.
-
du meinst wohl, ich wäre ganz dumm oder was?
natürlich hab ich mich da zuallererst informiert, und JA ich hab auch das wikibook gelesen...
-
Shiba schrieb:
@cooky
Kannst Du mir bitte die nach Deiner Meinung korrekte Beschreibung dieser Begriffe geben.
Ich habe damit nämlich auch so meine Probleme.Vielleicht gibt es da ja einen Zusammenhang.
Bevor eine Variable irgendwie verwendet werden kann, muss sie Deklariert werden. Dem Compiler wird somit bekannt gemacht, dass diese Variable existiert, welchen Typ sie hat und wie sie heißt. Eine Definition sagt dem Compiler zusätzlich, dass er für diese Variable zuständig ist. Eine Definition ist immer auch eine implizite Deklaration.
int main() { extern int a; // Deklaration von a return 0; } int a; // Definition von a // a wird hier zusätzlich implizit mit 0 initialisiert, da a eine statische Lebenszeit hat. // Alle globalen Variablen haben eine statische Lebenszeit.
a ist hier getrennt deklariert und definiert worden, was selten nötig ist. Normalerweise werden Variablen gleichzeitig deklariert und definiert wie hier:
int main() { int a; // Definition und implizite Deklaration von a return 0; }
a wird hier nicht initialisiert, bei lokalen Variablen muss das explizit geschehen:
int main() { int a = 5; // Definition, implizite Deklaration und Initialisierung von a auf 5 return 0; }
Bei Funktionen sieht das etwas anders aus. Eine Initialisierung gibt es natürlich nicht, nur eine Deklaration und eine Definition. Eine Deklaration einer Funktion sieht so aus:
void foo();
Das extern ist hier implizit. Eine Definition beinhalten den Funktionskörper:
void foo() { }
Bei Strukturen (enums, Klassen) sieht die Deklaration so aus:
struct A;
Ist nur die Deklaration einer Struktur bekannt, kann auch nur mit Pointern/Referenzen auf diese Struktur gearbeitet werden, da nur bei diesen auch ohne die Definition klar ist wie groß sie sind.
Die Definition ist wie immer eine implizite Deklaration:struct A { int a; };
Lustigerweise scheinen viele Leute da etwas durcheinandergebracht zu haben, unter anderem auch dieses Tutorial, was ich eigentlich ganz gerne empfehle. Wutz hatte mich aber mal darauf aufmerksam gemacht, dass die das mit der Definition auch nicht richtig erklären.
-
--- schrieb:
natürlich bin ich mir bewusst, dass "The C Programming Language" schon mal angegeben wurde, allerdings ohne jegliche begründung, warum der nutzer mir gerade das buch empfiehlt.
Es ist sinnvoll, sich als Anfänger in einem Forum die FAQ durchzulesen, also für dich z.B.
http://www.c-plusplus.net/forum/p2188823#2188823
da hättest du dann auch deine Auskunft bekommen ohne nochmal nachzufragen.Genauer nachlesen ist auch bei anderen Links sinnvoll, z.B.
http://www.amazon.de/review/R2QF28358C773F/ref=cm_aya_cmt?ie=UTF8&ASIN=3827244676#wasThisHelpful--- schrieb:
das tutorial, zu dem Shiba einen link gepostet hat, ist übrigens gut.
Als Anfänger kannst du den fachlichen Inhalt und ob Sinn oder Unsinn überhaupt nicht beurteilen.
-
--- schrieb:
du meinst wohl, ich wäre ganz dumm oder was?
natürlich hab ich mich da zuallererst informiert, und JA ich hab auch das wikibook gelesen...
Dann mußt du auch nicht fragen, warum es gut ist.
Wutz schrieb:
--- schrieb:
das tutorial, zu dem Shiba einen link gepostet hat, ist übrigens gut.
Als Anfänger kannst du den fachlichen Inhalt und ob Sinn oder Unsinn überhaupt nicht beurteilen.
Genau das dachte ich mir auch, danke dass du darauf hingewiesen hast, dann muß es schonmal ich nicht tun.
-
Das hier ist ganz gut:
http://www.amazon.de/C-Programmieren-Anfang-Helmut-Erlenkötter/dp/3499600749/
und auch noch nicht vergriffen, wie die meisten anderen.Zur Vertiefung und Referenz aber K+R Buch + Lösungen (unbedingt) besorgen, die reden nicht um den heißen Brei, aber etwas Geduld mitbringen.
-
Danke cooky451, hab jetzt verstanden was Du bzgl des Tuts meint.
Ich verwechsel diese beiden Begriffe gern wegen der Alliteration (de - de).
Ist aber auch fies