<?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[Adressen der Elemente eines Arrays ausgeben.]]></title><description><![CDATA[<p>Um mit Zeigern im Zusammenhang mit Arrays ein bißchen zu üben, habe ich bei folgendem Programm<br />
die Ausgabe in Zeile 21 um den Code</p>
<pre><code class="language-cpp">&lt;&lt;&amp;charArray[i]&lt;&lt;
</code></pre>
<p>ergänzt.<br />
Ich wollte mir ganz gerne mal die Adressen der einzelnen Elemente ausgeben lassen.</p>
<p>Auf der Konsole wird dann ausgegeben(Die Zeichen links vor den Spiegelstrichen sind die eingegebenen Zeichen):</p>
<pre><code class="language-cpp">a - asdfghjjkl♦ (
s - sdfghjjkl♦ (
d - dfghjjkl♦ (
f - fghjjkl♦ (
g - ghjjkl♦ (
h - hjjkl♦ (
j - jjkl♦ (
j - jkl♦ (
k - kl♦ (
l - l♦ (
</code></pre>
<p>Vermutlich habe ich irgendwo einen Fehler gemacht. Kann mir jemand auf die Sprünge helfen?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

int main()
{
    char charArray[10];               //legt ein Zeichen-Array an
    char* pArray=&amp;charArray[0];       // oder char* pArray=charArray;

    //Eingabe der Werte des Array mittels Zeigern und Schleife
    for(int i=0;i&lt;10;i++)
     {
        cout&lt;&lt;&quot;Bitte geben Sie ein Zeichen ein: &quot;&lt;&lt;flush;
        cin&gt;&gt;*pArray;
        pArray++;
     }
    //Ausgabe des Array mittels Zeigern und Schleife
    //Ausgegeben werden soll der Wert des Elements sowie die Adresse
    for(int i=0;i&lt;10;i++)
     {
        cout&lt;&lt;charArray[i]&lt;&lt;&quot; - &quot;&lt;&lt;&amp;charArray[i]&lt;&lt;endl;
     }
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/291049/adressen-der-elemente-eines-arrays-ausgeben</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 23:12:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/291049.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Aug 2011 20:57:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Adressen der Elemente eines Arrays ausgeben. on Tue, 09 Aug 2011 20:58:25 GMT]]></title><description><![CDATA[<p>Um mit Zeigern im Zusammenhang mit Arrays ein bißchen zu üben, habe ich bei folgendem Programm<br />
die Ausgabe in Zeile 21 um den Code</p>
<pre><code class="language-cpp">&lt;&lt;&amp;charArray[i]&lt;&lt;
</code></pre>
<p>ergänzt.<br />
Ich wollte mir ganz gerne mal die Adressen der einzelnen Elemente ausgeben lassen.</p>
<p>Auf der Konsole wird dann ausgegeben(Die Zeichen links vor den Spiegelstrichen sind die eingegebenen Zeichen):</p>
<pre><code class="language-cpp">a - asdfghjjkl♦ (
s - sdfghjjkl♦ (
d - dfghjjkl♦ (
f - fghjjkl♦ (
g - ghjjkl♦ (
h - hjjkl♦ (
j - jjkl♦ (
j - jkl♦ (
k - kl♦ (
l - l♦ (
</code></pre>
<p>Vermutlich habe ich irgendwo einen Fehler gemacht. Kann mir jemand auf die Sprünge helfen?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

int main()
{
    char charArray[10];               //legt ein Zeichen-Array an
    char* pArray=&amp;charArray[0];       // oder char* pArray=charArray;

    //Eingabe der Werte des Array mittels Zeigern und Schleife
    for(int i=0;i&lt;10;i++)
     {
        cout&lt;&lt;&quot;Bitte geben Sie ein Zeichen ein: &quot;&lt;&lt;flush;
        cin&gt;&gt;*pArray;
        pArray++;
     }
    //Ausgabe des Array mittels Zeigern und Schleife
    //Ausgegeben werden soll der Wert des Elements sowie die Adresse
    for(int i=0;i&lt;10;i++)
     {
        cout&lt;&lt;charArray[i]&lt;&lt;&quot; - &quot;&lt;&lt;&amp;charArray[i]&lt;&lt;endl;
     }
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2104155</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2104155</guid><dc:creator><![CDATA[redrew99]]></dc:creator><pubDate>Tue, 09 Aug 2011 20:58:25 GMT</pubDate></item><item><title><![CDATA[Reply to Adressen der Elemente eines Arrays ausgeben. on Tue, 09 Aug 2011 21:02:24 GMT]]></title><description><![CDATA[<p>Erstens kann es riskant sein, direkt in ein char-Array zu schreiben, weil der Eingabe-Operator nicht weiß wieviel Platz er dort hat. In dem Fall hast du wohl zu viel eingegeben, was die seltsamen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/2666.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--diamond_suit"
      title=":diamond_suit:"
      alt="♦"
    /> erklären könnte.</p>
<p>Zweitens (und damit zu deiner Frage): Du übergibst einen char-Zeiger an den Ausgabe-Operator - und für den gibt es eine spezielle Überladung, die ihn als Anfangspunkt eines C-Strings interpretiert. Wenn du den Zeiger als Adresse ausgeben willst, mußt du ihn in einen void* casten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2104157</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2104157</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 09 Aug 2011 21:02:24 GMT</pubDate></item></channel></rss>