<?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[Hilfe mit char* - Zeigern]]></title><description><![CDATA[<p>Also ich hab folgendes Problem:</p>
<p>Ich beschäftige mich gerade mit Zeigern und eigentlich ist bislang alles klar. Allerdings hab ich eine Frage zu char* - Zeigern.</p>
<pre><code class="language-cpp">int Var = 10;
int *pVar;
pVar = &amp;Var;

// *pVar --&gt; 10 --&gt; Wert den die Adresse von Var speichert
// pVar --&gt; Adresse von Var
</code></pre>
<p>Soweit okay.</p>
<pre><code class="language-cpp">char *pDavis;
pDavis = &quot;Davis&quot;;
cout &lt;&lt; *pDavis;

//pDavis --&gt; Davis (Das erhalte ich per cout)
//*pDavis --&gt; D
</code></pre>
<p>Wenn ich aber *pDavis inkrementiere erhalte ich</p>
<pre><code class="language-cpp">*pDavis --&gt; Da
</code></pre>
<p>Wiederhole ich das Ganze kommt</p>
<pre><code class="language-cpp">*pDavis --&gt; Dav
</code></pre>
<p>Allerdings ist es vollkommen egal ob ich pDavis oder *pDavis inkremetiere, immer das Gleiche! Jetzt kann ich mir darauf keinen Reim machen. Wie soll ich mir das Ganze im Speicher vostellen, wird jeder Buchstabe einzeln unter seiner eigenen Adresse gespeichert und worauf zeigen *pDavis und pDavis?</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/186978/hilfe-mit-char-zeigern</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 14:24:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/186978.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 14 Jul 2007 10:52:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 10:52:31 GMT]]></title><description><![CDATA[<p>Also ich hab folgendes Problem:</p>
<p>Ich beschäftige mich gerade mit Zeigern und eigentlich ist bislang alles klar. Allerdings hab ich eine Frage zu char* - Zeigern.</p>
<pre><code class="language-cpp">int Var = 10;
int *pVar;
pVar = &amp;Var;

// *pVar --&gt; 10 --&gt; Wert den die Adresse von Var speichert
// pVar --&gt; Adresse von Var
</code></pre>
<p>Soweit okay.</p>
<pre><code class="language-cpp">char *pDavis;
pDavis = &quot;Davis&quot;;
cout &lt;&lt; *pDavis;

//pDavis --&gt; Davis (Das erhalte ich per cout)
//*pDavis --&gt; D
</code></pre>
<p>Wenn ich aber *pDavis inkrementiere erhalte ich</p>
<pre><code class="language-cpp">*pDavis --&gt; Da
</code></pre>
<p>Wiederhole ich das Ganze kommt</p>
<pre><code class="language-cpp">*pDavis --&gt; Dav
</code></pre>
<p>Allerdings ist es vollkommen egal ob ich pDavis oder *pDavis inkremetiere, immer das Gleiche! Jetzt kann ich mir darauf keinen Reim machen. Wie soll ich mir das Ganze im Speicher vostellen, wird jeder Buchstabe einzeln unter seiner eigenen Adresse gespeichert und worauf zeigen *pDavis und pDavis?</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1325222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325222</guid><dc:creator><![CDATA[mulo]]></dc:creator><pubDate>Sat, 14 Jul 2007 10:52:31 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 11:21:31 GMT]]></title><description><![CDATA[<p>Ein char-Zeiger zeigt auf ein Array aus chars, was mit \0 terminiert wird.</p>
<p>pDavis zeigt auf das erste Element des Arrays und *pDavis gibt dir das erste Element des Arrays.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1325235</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325235</guid><dc:creator><![CDATA[The-Kenny]]></dc:creator><pubDate>Sat, 14 Jul 2007 11:21:31 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 11:33:04 GMT]]></title><description><![CDATA[<p>mulo schrieb:</p>
<blockquote>
<p>Wenn ich aber *pDavis inkrementiere erhalte ich</p>
<pre><code class="language-cpp">*pDavis --&gt; Da
</code></pre>
<p>Wiederhole ich das Ganze kommt</p>
<pre><code class="language-cpp">*pDavis --&gt; Dav
</code></pre>
</blockquote>
<p>Wenn dir dein Compiler obiges bei cout &lt;&lt; *pDavis;<br />
anzeigt, dann ist er kaputt. Normalerweise sollte jeweils nur ein Zeichen ausgegeben werden.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int  main()
{
	char* pstr = &quot;Braunhirsch&quot;; // pstr ist ein Zeiger auf eine konstante Zeichenkette (read only)
								// und zeigt auf das erste Byte dieser Zeichenkette.
	cout &lt;&lt; *pstr &lt;&lt; endl;		// Der Stern, dereferenziert das, worauf der Zeiger pstr zeigt,
								// das ist ein char, also ist die Ausgabe B
	pstr++;						// Zeiger, inkrementieren, Zeiger zeigt auf das nächste Byte, nämlich auf 'r'
	cout &lt;&lt; *pstr &lt;&lt; endl;		// Dereferenzieren, Ausgabe 'r'
	// ... usw ...
	pstr--;						// Zeiger zeigt wieder auf den Anfang der Zeichenkette

	cout &lt;&lt; pstr &lt;&lt; endl;		// Implizite Dereferenzierung und Umwandlung in einen std string.
								// Ausgabe 'Braunhirsch'

	return 0;
}
MfG
D.C
</code></pre>
<p><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/1325243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325243</guid><dc:creator><![CDATA[Der C Programmierer]]></dc:creator><pubDate>Sat, 14 Jul 2007 11:33:04 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 11:37:19 GMT]]></title><description><![CDATA[<p>naja .. hab den BCB5 ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1325248</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325248</guid><dc:creator><![CDATA[mulo]]></dc:creator><pubDate>Sat, 14 Jul 2007 11:37:19 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 11:48:54 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Auch der BCB5 wendet die Zeigerarithmetik korrekt an.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1325261</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325261</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 14 Jul 2007 11:48:54 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 11:50:46 GMT]]></title><description><![CDATA[<p>akari schrieb:</p>
<blockquote>
<p>Hallo</p>
<p>Auch der BCB5 wendet die Zeigerarithmetik korrekt an.</p>
<p>bis bald<br />
akari</p>
</blockquote>
<p>und das heißt konkret? Ist jetzt alles richtig oder nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1325263</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325263</guid><dc:creator><![CDATA[mulo]]></dc:creator><pubDate>Sat, 14 Jul 2007 11:50:46 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mit char* - Zeigern on Sat, 14 Jul 2007 14:24:00 GMT]]></title><description><![CDATA[<p>mulo schrieb:</p>
<blockquote>
<p>und das heißt konkret? Ist jetzt alles richtig oder nicht?</p>
</blockquote>
<p>Nein. Das, was Du geschrieben hast, kann nicht sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1325346</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1325346</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Sat, 14 Jul 2007 14:24:00 GMT</pubDate></item></channel></rss>