<?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 auf lokale variable]]></title><description><![CDATA[<p>Hallo <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>
<p>Frage,ist der Zeiger so verwendet Ok? Oder ist da ein fehler im code (bin grade im kapitel über Zeiger und bin mir hier nicht sicher)?</p>
<pre><code>struct Int
{
int wert;
};

void GetInt(Int *i)
{
Int iTemp;
iTemp.wert = 5;
*i = iTemp;
}

void main()
{
Int i;
GetInt(&amp;i);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/334037/pointer-auf-lokale-variable</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 02:37:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/334037.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 18 Aug 2015 08:06:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 08:06:58 GMT]]></title><description><![CDATA[<p>Hallo <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>
<p>Frage,ist der Zeiger so verwendet Ok? Oder ist da ein fehler im code (bin grade im kapitel über Zeiger und bin mir hier nicht sicher)?</p>
<pre><code>struct Int
{
int wert;
};

void GetInt(Int *i)
{
Int iTemp;
iTemp.wert = 5;
*i = iTemp;
}

void main()
{
Int i;
GetInt(&amp;i);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2464412</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464412</guid><dc:creator><![CDATA[Zeiger]]></dc:creator><pubDate>Tue, 18 Aug 2015 08:06:58 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 08:14:42 GMT]]></title><description><![CDATA[<p>Ist richtig. Du könntest allerdings auch</p>
<pre><code>void GetInt(Int *i)
{
    i-&gt;wert = 5;
}
</code></pre>
<p>schreiben. Das ist etwas kürzer und macht das gleiche.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464414</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464414</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Tue, 18 Aug 2015 08:14:42 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 08:17:58 GMT]]></title><description><![CDATA[<p>In Bezug auf den Pointer sehe ich so keinen Fahler, aber void main ist falsch (d.h. nicht standardkonform, wenn dein Compiler es vielleicht auch zulässt), es muss int main sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464417</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Tue, 18 Aug 2015 08:17:58 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 08:23:18 GMT]]></title><description><![CDATA[<p>Also das mit main wusste ich noch nicht, dann benutze ich jetzt int main <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>
<p>Was ich noch nicht verstehe ist das mit lokalen Variablen und Zeigern... Warum ist es hier Ok dass ich eine lokale an einen Zeiger zuweise? Normalerweise ist das doch verboten dachte ich??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464421</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464421</guid><dc:creator><![CDATA[Zeiger]]></dc:creator><pubDate>Tue, 18 Aug 2015 08:23:18 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 08:53:24 GMT]]></title><description><![CDATA[<p>Du weist dem Zeiger nichts zu, sondern dem Objekt, auf das der Zeiger zeigt.</p>
<p>*i ist das Objekt, i der Zeiger.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464428</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464428</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Tue, 18 Aug 2015 08:53:24 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 09:11:35 GMT]]></title><description><![CDATA[<p>sebi707 schrieb:</p>
<blockquote>
<p>Ist richtig. Du könntest allerdings auch</p>
<pre><code>void GetInt(Int *i)
{
    i-&gt;wert = 5;
}
</code></pre>
<p>schreiben. Das ist etwas kürzer und macht das gleiche.</p>
</blockquote>
<p>In diesem Fall ist der Effekt der gleiche und dennoch ist es nicht das gleiche. Sobald ich die Struktur verändere, muss ich möglicherweise die Funktion auch anpacken. Daher ist Dein Vorschlag die deutlich schlechtere Variante.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464431</guid><dc:creator><![CDATA[tntnet]]></dc:creator><pubDate>Tue, 18 Aug 2015 09:11:35 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 09:22:50 GMT]]></title><description><![CDATA[<p>Ok danke ich glaub jetzt hab ichs verstanden <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/2464432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464432</guid><dc:creator><![CDATA[Zeiger]]></dc:creator><pubDate>Tue, 18 Aug 2015 09:22:50 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 09:47:09 GMT]]></title><description><![CDATA[<p>Zeiger schrieb:</p>
<blockquote>
<p>Was ich noch nicht verstehe ist das mit lokalen Variablen und Zeigern... Warum ist es hier Ok dass ich eine lokale an einen Zeiger zuweise? Normalerweise ist das doch verboten dachte ich??</p>
</blockquote>
<p>i Zeigt auf ein Objekt außerhalb der Funktion. (das Objekt kommt von der rufenden Funktion)</p>
<p>Was du meinst ist:</p>
<pre><code>Int *GetInt(void)
{
Int iTemp;    // lokale Variable
iTemp.wert = 5;
return &amp;iTemp  // nicht nachmachen
}
</code></pre>
<p>Hier wird die Adresse einer lokalen Variable <strong>zurück</strong> gegeben.<br />
Diese Variable verliert aber beim Beenden der Funktio ihre Gültigkeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464435</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464435</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Tue, 18 Aug 2015 09:47:09 GMT</pubDate></item><item><title><![CDATA[Reply to pointer auf lokale variable on Tue, 18 Aug 2015 10:19:34 GMT]]></title><description><![CDATA[<p>tntnet schrieb:</p>
<blockquote>
<p>Sobald ich die Struktur verändere, muss ich möglicherweise die Funktion auch anpacken. Daher ist Dein Vorschlag die deutlich schlechtere Variante.</p>
</blockquote>
<p>Und bei dem ursprünglichen Code jetzt nicht oder was? Zugegeben es ist nicht genau das gleiche weil beim ursprünglichen Code ein lokales Objekt angelegt wird und dieses dann kopiert, aber meistens will man ja sowieso unnötige kopieren vermeiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2464440</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2464440</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Tue, 18 Aug 2015 10:19:34 GMT</pubDate></item></channel></rss>