<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[C++] Strukturen]]></title><description><![CDATA[<p>Hey Leute,<br />
ich bin gerade dabei in nem Selbststudium mir die Sprache C++ beizubringen und acker gerade nen Buch durch wo ich ein paar faregn zu den Codezeilen habe, die leider nicht so gut erklärt werden bis garnicht.<br />
Ich hoffe ihr könnt mir da bisschen aushhelfen!</p>
<p>Fangen wir mit paar einzelheiten an:<br />
Das &amp; Zeichen kann die Adresse aufm Speicher einer Variable zurückgeben ode als Alias Name dienen, jenachdem was davor steht, richtig?</p>
<p>Desweiteren hier mal etwas Code:</p>
<pre><code>struct astruct
{
   int iwert;
   float fwert;
};

[b]void print(const strut astruct *p);[/b]

int main(void)
{
  struct astruct atest;
  ......

  [b]print(&amp;atest)[/b]
}

[b]void print ( const struct astruct * p ) [/b]
{
......
}
</code></pre>
<p>Ich habe jetzt zu den 3 fettgedruckten Dingen mal Fragen:<br />
Was genau bewirkt <strong>Zeile 7</strong>?<br />
void bedeutet ja dass es kein Rückgabewert gibt, was print macht ist mir schleierhaft, kanns mir aber denken. Auf die Struktur astruct wird nen zeiger p initalisiert, oder?<br />
Aber wofür soll das gut sein?<br />
Ich verstehe davon den Sinn nicht!</p>
<p><strong>Zeile 13</strong> frage ich mich wieso Print mit dem &amp; Zeichen benutzt wird, also in diesem Fall wird atest ja als Alias Name benutzt, oder?<br />
Aber wieso?</p>
<p><strong>Zeile 16:</strong><br />
Wieso wird da p wieder als Zeiger dekladiert auf astruct?<br />
Müsste das niht auf atest sein?<br />
Und wieso wird überhaupt ein Zeiger Dekladiert wenn er zur Ausgabe nicht gebraucht wird?</p>
<p>Hoffe ihr könnt mir helfen!</p>
<p>Liebe Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/285344/c-strukturen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 08:48:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/285344.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 Apr 2011 16:58:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 16:58:28 GMT]]></title><description><![CDATA[<p>Hey Leute,<br />
ich bin gerade dabei in nem Selbststudium mir die Sprache C++ beizubringen und acker gerade nen Buch durch wo ich ein paar faregn zu den Codezeilen habe, die leider nicht so gut erklärt werden bis garnicht.<br />
Ich hoffe ihr könnt mir da bisschen aushhelfen!</p>
<p>Fangen wir mit paar einzelheiten an:<br />
Das &amp; Zeichen kann die Adresse aufm Speicher einer Variable zurückgeben ode als Alias Name dienen, jenachdem was davor steht, richtig?</p>
<p>Desweiteren hier mal etwas Code:</p>
<pre><code>struct astruct
{
   int iwert;
   float fwert;
};

[b]void print(const strut astruct *p);[/b]

int main(void)
{
  struct astruct atest;
  ......

  [b]print(&amp;atest)[/b]
}

[b]void print ( const struct astruct * p ) [/b]
{
......
}
</code></pre>
<p>Ich habe jetzt zu den 3 fettgedruckten Dingen mal Fragen:<br />
Was genau bewirkt <strong>Zeile 7</strong>?<br />
void bedeutet ja dass es kein Rückgabewert gibt, was print macht ist mir schleierhaft, kanns mir aber denken. Auf die Struktur astruct wird nen zeiger p initalisiert, oder?<br />
Aber wofür soll das gut sein?<br />
Ich verstehe davon den Sinn nicht!</p>
<p><strong>Zeile 13</strong> frage ich mich wieso Print mit dem &amp; Zeichen benutzt wird, also in diesem Fall wird atest ja als Alias Name benutzt, oder?<br />
Aber wieso?</p>
<p><strong>Zeile 16:</strong><br />
Wieso wird da p wieder als Zeiger dekladiert auf astruct?<br />
Müsste das niht auf atest sein?<br />
Und wieso wird überhaupt ein Zeiger Dekladiert wenn er zur Ausgabe nicht gebraucht wird?</p>
<p>Hoffe ihr könnt mir helfen!</p>
<p>Liebe Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051250</guid><dc:creator><![CDATA[ScriptMaster]]></dc:creator><pubDate>Mon, 18 Apr 2011 16:58:28 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 17:39:47 GMT]]></title><description><![CDATA[<p>Bist du dir ganz sicher, daß du da wirklich C++ lernst? Der Code sieht eher nach C aus.</p>
<p>Zeile 7 ist eine Funktionsdeklaration für die Funktion print() - diese nimmt einen Zeiger (Adresse) auf deine Struktur (genannt p) und gibt keinen Wert zurück.<br />
Zeiel 13 ruft diese Funktion auf - dazu bildet sie die Adresse der lokal definierten Variablen atest (mit dem Adress-Operator &amp;) und gibt sie als Parameter weiter.<br />
Ab Zeile 16 beginnt die Definition der Funktion - und weil ein Parameter einen Namen benötigt, um ihn ansprechen zu können, wurde dieser ein p genannt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051285</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 18 Apr 2011 17:39:47 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 17:48:05 GMT]]></title><description><![CDATA[<p>Das Selbststudium kann ich nur loben, aber von Jürgen Wolf kann man nur warnen: siehe <a href="http://www.c-plusplus.net/forum/272350" rel="nofollow">hier</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051294</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051294</guid><dc:creator><![CDATA[Georg Lupus]]></dc:creator><pubDate>Mon, 18 Apr 2011 17:48:05 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 17:50:27 GMT]]></title><description><![CDATA[<p>Also laut dm Buch ist es C++, wenn es C ist, fühle ich mich verarscht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Aber danke nochmals, das hat mir jetzt echt weitergeholfen, das print erst als eine funktion dekladiert wurde, habe ich nicht gesehen bzw. gemerkt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Dickes Danke nochmal ^^</p>
<p><strong>Thema kann geclosed werden!</strong></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051296</guid><dc:creator><![CDATA[ScriptMaster]]></dc:creator><pubDate>Mon, 18 Apr 2011 17:50:27 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 17:51:34 GMT]]></title><description><![CDATA[<p>Zum Buch, naja kann dazu nicht viel sagen, werde mir aber sowieso nochmal ein anderes holen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051299</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051299</guid><dc:creator><![CDATA[ScriptMaster]]></dc:creator><pubDate>Mon, 18 Apr 2011 17:51:34 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 20:18:13 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/u1819" rel="nofollow">rüdiger</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/f8" rel="nofollow">Rund um die Programmierung</a> in das Forum <a href="http://www.c-plusplus.net/forum/f15" rel="nofollow">C++ (auch C++0x)</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051370</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Mon, 18 Apr 2011 20:18:13 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 20:24:25 GMT]]></title><description><![CDATA[<p>Das ist Code aus dem Buch &quot;C++ von A bis Z&quot;, ich kenn den Code nur zu gut!</p>
<p>Es gibt da einen Post über die Bücher von Jürgen Wolf, den find ich aber gerade nicht.</p>
<p>Wichtig ist, dass du aufhörst damit &quot;C++&quot; zu lernen. Das Buch ist ganz doof. Da lernst du kein C++, sondern &quot;C mit Klassen&quot;.<br />
Hol dir was besseres, hier eine Auswahl:</p>
<p><a href="http://www.c-plusplus.net/forum/251551" rel="nofollow">Büchertipps</a></p>
<p>Empfehlen kann ich Der C++ Programmierer von Ulrich Breymann, DAS ist modernes C++.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051372</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Mon, 18 Apr 2011 20:24:25 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 21:41:20 GMT]]></title><description><![CDATA[<p>Incocnito schrieb:</p>
<blockquote>
<p>Das ist Code aus dem Buch &quot;C++ von A bis Z&quot;, ich kenn den Code nur zu gut!</p>
<p>Es gibt da einen Post über die Bücher von Jürgen Wolf, den find ich aber gerade nicht.</p>
<p>Wichtig ist, dass du aufhörst damit &quot;C++&quot; zu lernen. Das Buch ist ganz doof. Da lernst du kein C++, sondern &quot;C mit Klassen&quot;.<br />
Hol dir was besseres, hier eine Auswahl:</p>
<p><a href="http://www.c-plusplus.net/forum/251551" rel="nofollow">Büchertipps</a></p>
<p>Empfehlen kann ich Der C++ Programmierer von Ulrich Breymann, DAS ist modernes C++.</p>
</blockquote>
<p>Im Moment ist glaub gerade wieder mal so eine WOLF-Phase im Gange <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Gab schon einige Threads in den letzten Wochen, die wir dem lieben Herrn Wolf zu verdanken haben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>Lg freeG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051403</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051403</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Mon, 18 Apr 2011 21:41:20 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 21:57:12 GMT]]></title><description><![CDATA[<p>Ich werd dem guten Herr Wolf mal ne Mail schreiben, wer ist dafür?</p>
<p>EDIT: Ich werde diese an <a href="mailto:%22judith.stevens@galileo-press.de" rel="nofollow">&quot;judith.stevens@galileo-press.de</a>&quot; senden (steht dort mit &quot;Für Fragen und Anmerkungen zum Inhalt des Buches&quot;).</p>
<p>Ich werde mal auf diesen langen Thread da verweisen und nachdrücklich anhand von Beispielen erläutern, wieso das Buch korrekterweise in &quot;C/C++ von A bis Z&quot; umbenannt werden müsste. Oder was schlagt ihr vor soll ich ihm sagen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051409</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Mon, 18 Apr 2011 21:57:12 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 21:55:01 GMT]]></title><description><![CDATA[<p>Incocnito schrieb:</p>
<blockquote>
<p>Ich werd dem guten Herr Wolf mal ne Mail schreiben, wer ist dafür?</p>
</blockquote>
<p>Ich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051410</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051410</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Mon, 18 Apr 2011 21:55:01 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 22:36:44 GMT]]></title><description><![CDATA[<p>Incocnito schrieb:</p>
<blockquote>
<p>Oder was schlagt ihr vor soll ich ihm sagen?</p>
</blockquote>
<p>Also ich bin für &quot;C++ von Klassen bis C&quot; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051417</guid><dc:creator><![CDATA[bmario]]></dc:creator><pubDate>Mon, 18 Apr 2011 22:36:44 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Mon, 18 Apr 2011 22:48:38 GMT]]></title><description><![CDATA[<p>Ich hab jetzt mal eine kleine eMail abgesendet - mal sehen, wie sie reagieren..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051420</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051420</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Mon, 18 Apr 2011 22:48:38 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 05:20:49 GMT]]></title><description><![CDATA[<p>Incocnito schrieb:</p>
<blockquote>
<p>Ich hab jetzt mal eine kleine eMail abgesendet - mal sehen, wie sie reagieren..</p>
</blockquote>
<p>Kannst du sie auch noch an mich schicken? Mich nimmt es echt Wunder.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051439</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Tue, 19 Apr 2011 05:20:49 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 07:49:25 GMT]]></title><description><![CDATA[<p>Oder Titel: Schlechter Stil und Fehler in C/C++ rechtfertigend kommentiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051472</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051472</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 19 Apr 2011 07:49:25 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 08:31:11 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Oder Titel: Schlechter Stil und Fehler in C/C++ rechtfertigend kommentiert.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051493</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 19 Apr 2011 08:31:11 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 11:22:14 GMT]]></title><description><![CDATA[<p>Ja ich hab da einen 2 Seiten Beschwerdebrief hingeschickt.<br />
Ihr könnt euch da ja auch mal melden. Euch stört dass, dann ändert es.<br />
Eine Mail kann ignoriert werden - 5 hingegen schwer. Ih rmüsst ja nicht unglaublich viel schreiben, sagt einfach, was euch stört. Schaden kann es ja nicht..</p>
<p>Und wenn jemand fragen zum Buch hat, ich hab hier ein Exemplar liegen.</p>
<p>So sieht mein Beschwerdebrief aus, er muss ja nicht unbedingt formell sein, wir schreiben ja an eine Privatperson und an keine Firma:</p>
<p><a href="http://www.file-upload.net/download-3370629/Beschwerde-an-den-Buchautor-J-rgen-Wolf-bez-glich-seines-Werkes.docx.html" rel="nofollow">Download (word-Dokument)</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051583</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Tue, 19 Apr 2011 11:22:14 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 12:25:30 GMT]]></title><description><![CDATA[<p>Incocnito schrieb:</p>
<blockquote>
<p>Ja ich hab da einen 2 Seiten Beschwerdebrief hingeschickt</p>
</blockquote>
<p>Und was bringt das? Vom Markt wird das Buch wohl kaum gehen. Das beste was passieren kann, ist, dass er das Buch überarbeitet und wenn er tatsächlich keine Ahnung von C++ hat, wie ihm ja von einigen unterstellt wird, bringt das rein gar nichts.</p>
<p>Ich denke sinnvoller ist es, ganz spezifisch auf einzelne Codebeispiele eingehen und versuchen, Schadensbegrenzung zu betreiben.</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<pre><code class="language-cpp">struct astruct
{
   int iwert;
   float fwert;
};
</code></pre>
</blockquote>
<p>Ungarische Notation ist in C++ verpönt ...</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int main(void)
</code></pre>
</blockquote>
<p>... genauso verpönt wie das void in der Parameterliste.</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<pre><code class="language-cpp">struct astruct atest;
</code></pre>
</blockquote>
<p>Das ist etwas, was mich aufregt. In C++ schreibt niemand und wirklich <em>gar niemand</em> <code>struct</code> vor Strukturen. Das wird allein wegen der C-Kompatibilität vom Compiler gebilligt. Hier wird ein Anklagepunkt von Incocnito klar: C mit Klassen.</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void print ( const struct astruct * p )
</code></pre>
</blockquote>
<p>Igitt Zeiger. Das ist genau der Anwendungsfall, für den Referenzen eingeführt wurden. Hier <s>sollte</s> muss man Referenzen benutzen.<br />
Aber ich tue dem Autor Unrecht. Er sagt doch:</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<p>Natürlich lässt sich das auch mit den Referenzen nachbilden.<br />
Allerdings muss man dann wieder mit dem Punktoperator auf die einzelnen Elemente zugreifen, und der Funktionsaufruf erfolgt ohne den Adressoperator:</p>
</blockquote>
<p>Von einer Wertung sehe ich da nichts. Und genau die müsste hier erfolgen um einem Anfänger die folgende Funktion anzugewöhnen:</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void print ( const struct astruct&amp; p ) {
</code></pre>
</blockquote>
<p>Diese Funktionsdeklaration gehört ins ABC von jedem C++-Programmierer und nicht die Variante mit den Pointern.</p>
<p>Aber J.W. hat etwas gegen Referenzen:</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<p>Eine Referenz in C++ ist nichts anderes als ein anderer Name (Alias-Name) für ein Speicherobjekt.</p>
</blockquote>
<p>Im ganzen Abschnitt über Referenzen fragt man sich, was diese denn eigentlich sollen. Und in der Tat: innerhalb einer Funktion nutzen sie wirklich nichts. Man verwendet sie als Parameter von Funktionen. Als syntaktisch schönere Alternative zu konstanten Pointern. Und meistens anstelle von konstanten Pointern auf konstanten Speicher.</p>
<p>Der Abschnitt über die Referenzen sollte unbedingt ausgebaut werden und mit einem realistischen Beispiel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051619</guid><dc:creator><![CDATA[Georg Lupus]]></dc:creator><pubDate>Tue, 19 Apr 2011 12:25:30 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 12:48:04 GMT]]></title><description><![CDATA[<p>Ich fande es auch lustig, dass er immer wieder sagt, dass alte Zeiger im C-Style da nicht hingehören, veraltet und unsicher sind. Trotzdem benutzt er sie das ganze Buch über - was soll das?<br />
Er widerspricht sich selbst andauernd. Und alles mit dem Argument:</p>
<p>Jürgen Wolf: C++ von A bis Z, Kapitel 2. C-Strings, S. 164 schrieb:</p>
<blockquote>
<p>Ihnen ist sicher aufgefallen, dass die Verwendung von C-Strings recht umständlich ist, und häufig kann eine falsche Verwendung zu gefährlichem Code, wie zum Beispiel Pufferüberläufeb (Buffer Overflow), führen. [...]</p>
<p>Leider hat die Vergangenheit gezeigt, dass sich viele Programmierer einfach nicht an diese Regeln gehalten haben, so dass heute kein Tag vergeht, an dem nicht wiede reine Sicherheitslücke in einem programm gefunden und gegebenenfalss ausgenutzt wurde. [...]</p>
<p>Und aus dem Grund, dass die C-Strings recht umständlich zu bedienen sind und der Sicherheitsaspekt häufig vernachlässigt worden ist, wurde in C++ die <code>string</code> -Klasse eingeführt, die erheblich einfacher zu verwenden ist, mehr Funktionalität bietet und vor allem erheblich sicherer ist. Aber wie bereits erwähnt - da es noch viele Zeilen C-Code gibt, müssen Sie sich als ernsthafter C++-programmierer auch mit C-STrings befassen. Und wenn die Ausführgeschwindigkeit auch noch von Bedeutung ist (aber nur dann), sind die C-Strings immer noch wesentlich effizienter. [...]</p>
</blockquote>
<p>Die Klasse string wird dann auf Seite 695 beschrieben, davor wird immer const char* verwendet.. Aha. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /><br />
Er sagt ja auch, dass sich ein C++-programmierer häufig mit altem C-Code rumprügeln muss. Ich kann das bis jetzt nicht bestätigen (außer wenn sich hier Leute melden, die aus einem völlig veraltetem Buch [C++ von A bis Z :D] oder einem alten Kurs C++ lernen) - was sagt ihr dazu?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051626</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Tue, 19 Apr 2011 12:48:04 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 12:56:53 GMT]]></title><description><![CDATA[<p>Na ja, WinAPI, OpenGL und diverse Bibliotheken arbeiten noch mit C-Strings. Im alten Standard muss man für fstream auch die Strings zu C-Strings machen... Die begegnen einem schon überall und immer wieder. Und es ist wichtig, dass man den internen Aufbau versteht. Ich würde die Dinger schon erklären und lehren, aber halt nicht bis zum Erbrechen.</p>
<p>Cool fände ich in C++ aber den Ansatz Strings vor Arrays zu erklären und bei der Erklärung von Arrays dabei langsam wieder string zu erklären (so ist ein string eigentlich auch nur eine Verkettung von chars). Und dann: Was, wenn wir nicht nur Zeichen verketten wollen, sondern ganz andere Objekte? Und dann kommt der Sprung zu den Containern.</p>
<p>Hm, ich hätte Lust ein C++-Tut zu schreiben. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051632</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051632</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 19 Apr 2011 12:56:53 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 13:00:57 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Ich würde die Dinger schon erklären und lehren, aber halt nicht bis zum Erbrechen.</p>
</blockquote>
<p>..und <strong>nicht</strong> gleich zu Beginn. Ich würde erst erklären wie man sie benutzt, dann erklären, wie sie denn funktionieren. Vorher sollte man auf std::vector und co eingehen, finde ich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051637</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Tue, 19 Apr 2011 13:00:57 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 13:03:00 GMT]]></title><description><![CDATA[<p>Durch zitierst den letzten Satz meines ersten Absatzes, um einen Teil meines zweiten umzuformulieren? :p SCNR</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051639</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 19 Apr 2011 13:03:00 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 13:11:27 GMT]]></title><description><![CDATA[<p>Upps..<br />
Dein erster Satz hat kein Komma, es ist öde in eine Landschaft ohne Satzzeichen zu blicken.. Ich musste ihn 3 mal lesen, um ihn zu verstehen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051645</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051645</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Tue, 19 Apr 2011 13:11:27 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 13:13:18 GMT]]></title><description><![CDATA[<p>Huch, welcher Satz? Der meines zweiten Absatzes? Aber da ist doch ein und, das trennt Teil 1 von Teil 2. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title="=/"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051646</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051646</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 19 Apr 2011 13:13:18 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 14:35:09 GMT]]></title><description><![CDATA[<p>So ich habe nun eine Antwort bekommen, die ich hier mal poste:</p>
<p>Jürgen Wolf schrieb:</p>
<blockquote>
<p>Sehr geehrter Herr Schröder,</p>
<p>Es tut mir natürlich sehr leid, dass sie mit dem Buch nicht zufrieden sind.</p>
<p>Jeder Autor hat seine Art und Weise etwas zu erklären. Man überlegt sich, wie erkläre ich es am Besten ohne zuviel vorwegzunehmen. Die Zeiger wurden zu Beginn erklärt, um den Leser nicht gleich mit Klassen und Datenstruktur gleichzeitig zu bombardieren. Ebenso war es bei anderen Dingen im Kapitel 2 (wo sie am meisten Kritik geschrieben haben).</p>
<p>Ein Problem dürfte wohl für viele Leser sein, dass ich im Buch die Dinge wie std::string und std:vector hinten im Buch beschreibe und so eben nicht immer vorgreifen zu müssen. Das dürfte wohl auch die Hauptkritik der meisten Leser sein. Würde ich hier gleich auf std::string oder std::vector zurückgreifen, hätte ich auch nicht soviel &quot;C mit Klassen&quot; (wie sie es bezeichnen) verwenden müssen.</p>
<p>Ich habe diese Kritik natürlich auch zu Herzen genommen und bereits in meinem C++-Taschenbuch einfließen lassen. Auch die nächste Auflage des C++-Handbuches wird sicherlich komplett anders aussehen. Viele nützlich Verbesserungen habe ich ja schon und außerdem kommt ja auch noch der neue C++-Standard dazu.</p>
<p>Mit besten Grüße<br />
Jürgen Wolf</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2051692</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051692</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Tue, 19 Apr 2011 14:35:09 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 14:37:42 GMT]]></title><description><![CDATA[<p>Genau, die Hauptkritik liegt in der Didaktik, nicht etwa in seinen Fehlern. Solchen Leuten kannst Du nichts erzählen. Überhaupt sollte Kritik nicht an Jürgen Wolf gehen, der Typ ist einfach viel zu engstirnig. Man sollte eher den Verlag dazu bewegen, von dem Verlag seiner Bücher wegzugehen. Aber die kümmert es wohl nicht, wenn falsche Informationen verkauft werden, solange sich's verkauft. -.-</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051695</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 19 Apr 2011 14:37:42 GMT</pubDate></item><item><title><![CDATA[Reply to C++] Strukturen on Tue, 19 Apr 2011 14:43:59 GMT]]></title><description><![CDATA[<p>Ja, da hast du wohl recht. Den Verlag kriegen wir sicher nicht überredet, dem gehts nur ums Geld.</p>
<p>Dem Autor (eines Programmierbuches) hingegen meist aber nicht. Bleibt also nur zu hoffen, dass er sich unsere Kritik zu Herzen nimmt und eine neue, komplett veränderte Auflage herausgibt und die alte als unsicher und falsch deklariert.</p>
<p>Da kann man nichts machen..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2051697</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2051697</guid><dc:creator><![CDATA[Incocnito]]></dc:creator><pubDate>Tue, 19 Apr 2011 14:43:59 GMT</pubDate></item></channel></rss>