<?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[Pointer Frage]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>kleine bescheidene Frage bei Pointern, dazu folgender Code:</p>
<pre><code class="language-cpp">char* char_pointer = new char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; *char_pointer;
</code></pre>
<p>Wie kann ich das ohne &quot;new&quot; lösen? Hab für die Benutzung von &quot;new&quot; Punktabzug bekommen (war eine Uni-Aufgabe).</p>
<p>Ohne new wird doch gar kein Speicherplatz reserviert, oder täusche ich mich?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/282592/pointer-frage</link><generator>RSS for Node</generator><lastBuildDate>Sun, 23 Aug 2026 00:34:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/282592.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Feb 2011 18:48:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 18:48:53 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>kleine bescheidene Frage bei Pointern, dazu folgender Code:</p>
<pre><code class="language-cpp">char* char_pointer = new char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; *char_pointer;
</code></pre>
<p>Wie kann ich das ohne &quot;new&quot; lösen? Hab für die Benutzung von &quot;new&quot; Punktabzug bekommen (war eine Uni-Aufgabe).</p>
<p>Ohne new wird doch gar kein Speicherplatz reserviert, oder täusche ich mich?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2024910</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2024910</guid><dc:creator><![CDATA[beselbube]]></dc:creator><pubDate>Tue, 22 Feb 2011 18:48:53 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 19:03:00 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">char c;
std::cout &lt;&lt; &quot;Bitte ein char eingeben: &quot;;
std::cin &gt;&gt; c;
</code></pre>
<p>Basics, anyone?</p>
<p>Nur nochmal zur Verdeutlichung: mit dem new-Schlüsselwort wird der speicher auf dem Heap reserviert während er in meinem Beispiel auf dem Stack allokiert wird. In der Regel sollte man den Stack als Speicherstelle bevorzugen, da er schneller ist als der Heap, besonders wenn es um kurzlebige und kleine Allokationen (typischerweise lokale Variablen) geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2024914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2024914</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Tue, 22 Feb 2011 19:03:00 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 19:25:00 GMT]]></title><description><![CDATA[<p>beselbube schrieb:</p>
<blockquote>
<p>Hab für die Benutzung von &quot;new&quot; Punktabzug bekommen (war eine Uni-Aufgabe).</p>
</blockquote>
<p>Das ist nachvollziehbar. Dynamische Speicherverwaltung ist nämlich nicht nur langsamer und fehleranfälliger, sondern hier komplett fehl am Platz. Benutze <code>new</code> nur, wenn du es wirklich brauchst, und setze in diesem Fall <code>delete</code> ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2024926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2024926</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 22 Feb 2011 19:25:00 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 21:05:27 GMT]]></title><description><![CDATA[<p>Sollte ich dazu sagen, dass wir es mit Pointern machen mussten? <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/2024996</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2024996</guid><dc:creator><![CDATA[beselbube]]></dc:creator><pubDate>Tue, 22 Feb 2011 21:05:27 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 21:14:02 GMT]]></title><description><![CDATA[<p>beselbube schrieb:</p>
<blockquote>
<p>Sollte ich dazu sagen, dass wir es mit Pointern machen mussten? <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>
</blockquote>
<p>Lieber nicht, das verstärkt nur den Hass auf C++-Lehrmethoden an Unis...</p>
<p>Zeiger sind hier nicht sinnvoll, es sei denn, du teilst uns einen wesentlichen Teil der Aufgabenstellung nicht mit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025002</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025002</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 22 Feb 2011 21:14:02 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 21:15:50 GMT]]></title><description><![CDATA[<p>Die lassen euch wahrscheinlich alles mit Pointern machen, bis ihr euch gar nicht mehr vorstellen könnt, wie es ohne gehen sollte um anschließend zu zeigen, dass Java das gleiche macht, aber kein * braucht und die memory-leaks, die in c++ natürlich zwangsweise auftreten _müssen_ ganz schlimm sind <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/2025003</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025003</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 22 Feb 2011 21:15:50 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 21:19:45 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Das ist nachvollziehbar. Dynamische Speicherverwaltung ist nämlich nicht nur langsamer und fehleranfälliger, sondern hier komplett fehl am Platz.</p>
</blockquote>
<p>Das sehe ich auch so.</p>
<p>beselbube schrieb:</p>
<blockquote>
<p>Sollte ich dazu sagen, dass wir es mit Pointern machen mussten? <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>
</blockquote>
<p>Ja, unbedingt.</p>
<p>Der Abzug für new ist mir unverständlich. Außer es ist ein Abzug für &quot;Der hat heimlich woanders gelernt und nicht bei nur mir dem einzig wahren Lehrer&quot;. Falls dem so ist, merke Dir seine Eigenheiten, also genau das, was die Profis wie Nexus ankreiden und schubse ihm in der Klausur seinen eigenen Stil von hinten wieder rein. Auf Uni gibt's nämlich für 100% Fachkenntnis keine sichere 1 mehr, sonder oft nur eine 2. Für die sichere 1 muß man auch noch erahnen, was der Bewerter so denken wird, was unglaublich schwierig wird, wenn ein Assi benotet, den man gar nicht kennt. Viel Erfolg!</p>
<p>Mir ist folgende Lösung eingefallen, zwar einen char direkt ohne new anzilegen, aber trotzdem Zeiger zu benutzen:</p>
<pre><code class="language-cpp">char der_char;
char* char_pointer = &amp;der_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; *char_pointer;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2025009</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025009</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 22 Feb 2011 21:19:45 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 22:06:40 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">char c;
std::cin &gt;&gt; *&amp;c;
std::cout &lt;&lt; *&amp;c;
</code></pre>
<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="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025031</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Tue, 22 Feb 2011 22:06:40 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 22:41:39 GMT]]></title><description><![CDATA[<p>314159265358979 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">char c;
std::cin &gt;&gt; *&amp;c;
std::cout &lt;&lt; *&amp;c;
</code></pre>
<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="😃"
    /></p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025046</guid><dc:creator><![CDATA[spassbremse]]></dc:creator><pubDate>Tue, 22 Feb 2011 22:41:39 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 22:43:56 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">char *c;
std::cin &gt;&gt; (char&amp;)c;
</code></pre>
<p>[Müllgeschnippt]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025047</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025047</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 22 Feb 2011 22:43:56 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Tue, 22 Feb 2011 22:52:35 GMT]]></title><description><![CDATA[<p>spassbremse schrieb:</p>
<blockquote>
<p>314159265358979 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">char c;
std::cin &gt;&gt; *&amp;c;
std::cout &lt;&lt; *&amp;c;
</code></pre>
<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="😃"
    /></p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025049</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025049</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Tue, 22 Feb 2011 22:52:35 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 06:38:10 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>beselbube schrieb:</p>
<blockquote>
<p>Sollte ich dazu sagen, dass wir es mit Pointern machen mussten? <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>
</blockquote>
<p>Lieber nicht, das verstärkt nur den Hass auf C++-Lehrmethoden an Unis...</p>
<p>Zeiger sind hier nicht sinnvoll, es sei denn, du teilst uns einen wesentlichen Teil der Aufgabenstellung nicht mit.</p>
</blockquote>
<p>okok, zur Rettung meiner Uni: (wusste gar nicht, dass es hier so ein Unbehagen auslöst)</p>
<p>Die Aufgabenstellung im Wortlaut: (Die 3.3 war hier gefragt)</p>
<p>*<strong>3.1 Datentypen einlesen</strong><br />
Schreiben Sie ein Programm, dass von der Tastatur nacheinander die folgenden Datentypen<br />
einliest:<br />
char<br />
int<br />
float<br />
double<br />
Anschließend sollen die Variablen auf der Konsole ausgegeben werden.</p>
<p><strong>3.2 Pointererstellung</strong><br />
Erweitern Sie das erstellte Programm aus 3.1 um Pointer. Führen Sie zunächst Pointer der 4<br />
Datentypen ein und weisen Sie das Ergebnis der Eingabe den Pointern zu. Geben Sie anstatt<br />
der Variablen die dereferenzierten Pointer auf der Konsole aus.</p>
<p><strong>3.3 Pointernutzung</strong><br />
Ändern Sie das Programm aus 3.2 indem Sie direkt die Pointer einlesen und anschließend den<br />
Inhalt der Pointer ausgeben. Setzen Sie zum Abschluss alle Pointer auf den NULL-Pointer und<br />
geben Sie die Pointer erneut auf der Konsole aus. Was fällt Ihnen dabei auf.*</p>
<p>Es ging also explizit darum Pointer zu trainieren.</p>
<p>Zur eigentlichen Frage:<br />
Es geht also nur wie Volkard es vorschlägt und mit new?</p>
<p>Meine Lösungen übrigens in Kurzform:</p>
<p><strong>3.1:</strong></p>
<pre><code class="language-cpp">char input_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; input_char;
</code></pre>
<p><strong>3.2:</strong></p>
<pre><code class="language-cpp">char* char_pointer;
char input_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; input_char;
char_pointer = &amp;input_char;
</code></pre>
<p><strong>3.3:</strong></p>
<pre><code class="language-cpp">char* char_pointer = new char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; *char_pointer;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2025072</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025072</guid><dc:creator><![CDATA[beselbube]]></dc:creator><pubDate>Wed, 23 Feb 2011 06:38:10 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 06:49:50 GMT]]></title><description><![CDATA[<p>Löse mal 3.2 wie folgt, dann weisst du bestimmt auch, was in 3.3 zu machen ist:</p>
<pre><code class="language-cpp">char input_char;
char* char_pointer = &amp;input_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; input_char;
std::cout &lt;&lt; *char_pointer;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2025076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025076</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Wed, 23 Feb 2011 06:49:50 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 07:47:12 GMT]]></title><description><![CDATA[<p>Jockelx schrieb:</p>
<blockquote>
<p>Löse mal 3.2 wie folgt, dann weisst du bestimmt auch, was in 3.3 zu machen ist:</p>
<pre><code class="language-cpp">char input_char;
char* char_pointer = &amp;input_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; input_char;
std::cout &lt;&lt; *char_pointer;
</code></pre>
</blockquote>
<p>ungetestet würde ich folgendes tun:</p>
<pre><code class="language-cpp">char input_char;
char* char_pointer = &amp;input_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; *char_pointer;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2025088</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025088</guid><dc:creator><![CDATA[beselbube]]></dc:creator><pubDate>Wed, 23 Feb 2011 07:47:12 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 07:50:09 GMT]]></title><description><![CDATA[<p>beselbube schrieb:</p>
<blockquote>
<p>ungetestet würde ich folgendes tun:</p>
<pre><code class="language-cpp">char input_char;
char* char_pointer = &amp;input_char;
std::cout &lt;&lt; &quot;Bitte einen char Eingeben: &quot;;
std::cin &gt;&gt; *char_pointer;
</code></pre>
</blockquote>
<p>Jetzt hast du's <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="🙂"
    /> (Abgesehen von dem Teil mit &quot;Zeiger auf 0 setzen&quot;)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025089</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Wed, 23 Feb 2011 07:50:09 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 08:11:58 GMT]]></title><description><![CDATA[<p>Wenn man da einen Zeiger auf eine lokale Variable eine Zeile darüber nimmt, fühlt sich der Hiwi doch veralbert!<br />
Also ich würde einen Small Object Allocator mit einer zu char konvertierbaren Klasse implementieren!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025099</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025099</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 23 Feb 2011 08:11:58 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 08:25:54 GMT]]></title><description><![CDATA[<p>Ich finde, so schwammig, wie die Aufgaben (vor allem 3.2 und 3.2) definiert sind, sollte sich der &quot;Professer&quot; (oder was auch immer das für einer ist) sich mit Punktabzügen zurückhalten. Mal ganz davon abgesehen, dass die Aufgaben total bescheuert sind.<br />
Ich finde, gerade beim Thema Zeiger sollte man schon genau beschreiben, was gemacht werden soll. Ich bezweifle z.B. bei Aufgabe 3.3 ganz stark, dass wirklich der Inhalt der Zeiger ausgegeben werden soll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2025106</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025106</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Wed, 23 Feb 2011 08:25:54 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Frage on Wed, 23 Feb 2011 08:30:21 GMT]]></title><description><![CDATA[<p>Über die Aufgabenstellung kann man natürlich streiten.. Mir ging es primär darum, wie ich es ohne new löse <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="🙂"
    /> Alles andere war ja kein Problem. Also danke soweit! <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/2025107</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2025107</guid><dc:creator><![CDATA[beselbube]]></dc:creator><pubDate>Wed, 23 Feb 2011 08:30:21 GMT</pubDate></item></channel></rss>