<?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[Wert in Pointer-Pointer speichern?]]></title><description><![CDATA[<p>Hi,</p>
<p>wie kann ich in einem **size die Größe von z.B. sizeof(unsigned char) speichern?</p>
<pre><code>unsigned char MyFunction(unsigned char **size)
{
   unsigned char value = 0x12; 
   unsigned char rtnsize = sizeof(unsigned char); 
   *size = &amp;rtnsize; 

   return(value);
}
</code></pre>
<p>Gruß<br />
Lars</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/300767/wert-in-pointer-pointer-speichern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 12 Aug 2026 16:11:08 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/300767.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 10 Mar 2012 11:00:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wert in Pointer-Pointer speichern? on Sat, 10 Mar 2012 11:00:47 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>wie kann ich in einem **size die Größe von z.B. sizeof(unsigned char) speichern?</p>
<pre><code>unsigned char MyFunction(unsigned char **size)
{
   unsigned char value = 0x12; 
   unsigned char rtnsize = sizeof(unsigned char); 
   *size = &amp;rtnsize; 

   return(value);
}
</code></pre>
<p>Gruß<br />
Lars</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2190373</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2190373</guid><dc:creator><![CDATA[Lars Berger]]></dc:creator><pubDate>Sat, 10 Mar 2012 11:00:47 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in Pointer-Pointer speichern? on Sat, 10 Mar 2012 11:20:26 GMT]]></title><description><![CDATA[<p><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=":confused:"
      alt="😕"
    /><br />
<code>siezof(irgendwas)</code> (bei (unsigned) char übrigens per Definition immer genau 1) ist vom Typ <code>size_t</code> (in der Regel ein unsigned int oder long unsigned int, muss aber nicht so sein). Ein <code>unsigned char**</code> ist ganz was anderes. Der Name eines Pointers, hier size, tut nichts zur Sache, der ist nur für den Programmierer zur Orientierung.<br />
Dein Codebeispiel macht auch nicht klar, was du überhaupt möchtest, das macht so keinen Sinn. Was soll value? Was soll die Zuweisung der Adresse einer lokalen Variablen an einen Pointer?<br />
Was möchtest du überhaupt genau erreichen? Erklär nicht das Wie, sondern das Was!</p>
<p>(Theoretisch sollte <code>sizeof(Datenpointer) == sizeof(size_t)</code> sein, so dass man den Compiler mit einem reinterpret_cast zu seinem Glück zwingen kann, aber das ist bestimmt nicht das was du möchtest.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2190385</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2190385</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 10 Mar 2012 11:20:26 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in Pointer-Pointer speichern? on Sat, 10 Mar 2012 11:23:15 GMT]]></title><description><![CDATA[<p>so nicht.<br />
wenn du den size* auf value oder rtnsize zeigen lässt, zeigt size* nach dem ende der funktion ins nirvana, weil die beiden unsigned chars dann nicht mehr existieren. du musst entweder die lifetime von rtnsize oder value selbst kontrollieren (so dass sie auch nach ende der funktion erhalten bleiben) oder du übergibst die größe der funktion zurück.</p>
<p>in dem fall ist das aber sinnlos, weil du value sowieso als kopie zurückgibst und</p>
<pre><code class="language-cpp">sizeof(MyFunction(x)) == sizeof(unsigned char)
</code></pre>
<p>.</p>
<p>die lösung (in deinem fall): vergiss rtnsize und gibt value zurück.</p>
<p>wahrscheinlich hast du aber ein etwas komplizierteres beispiel und es schon zusammengekürzt. nur, so macht es keinen sinn, weiter zu spekulieren, was du eigentlich tun willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2190386</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2190386</guid><dc:creator><![CDATA[oops]]></dc:creator><pubDate>Sat, 10 Mar 2012 11:23:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in Pointer-Pointer speichern? on Sat, 10 Mar 2012 11:36:48 GMT]]></title><description><![CDATA[<p>Wieso, funktioniert doch wunderbar...</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

unsigned char MyFunction(unsigned char **size)
{
   unsigned char value = 0x12;
   unsigned char rtnsize = sizeof(unsigned char);
   **size = rtnsize;

   return(value);
}

int main( )
{
	unsigned char the_real_foo = unsigned char();
	unsigned char *foo( &amp;the_real_foo );
	unsigned char bar = MyFunction( &amp;foo );

	std::cout &lt;&lt; &quot;*foo = &quot; &lt;&lt; static_cast&lt; unsigned &gt;( *foo ) &lt;&lt; &quot;\n&quot;;
	std::cout &lt;&lt; &quot; bar = &quot; &lt;&lt; static_cast&lt; unsigned &gt;(  bar ) &lt;&lt; &quot;\n&quot; &lt;&lt; std::endl;
}
</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/2190387</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2190387</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Sat, 10 Mar 2012 11:36:48 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in Pointer-Pointer speichern? on Sat, 10 Mar 2012 11:41:45 GMT]]></title><description><![CDATA[<p>ich würde allerdings sagen, dass das semantisch nicht korrekt ist, weil das mit ** normalerweise nicht gemeint ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2190391</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2190391</guid><dc:creator><![CDATA[oops]]></dc:creator><pubDate>Sat, 10 Mar 2012 11:41:45 GMT</pubDate></item></channel></rss>