<?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[sizeof() in C++?]]></title><description><![CDATA[<p>gibt es in C++ eine Methode die<br />
dem sizeof() aus ANSI C entspricht?<br />
Schon mal Danke für eure Hilfe<br />
mit freundlichen Grüßen<br />
sizeof() <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/topic/266666/sizeof-in-c</link><generator>RSS for Node</generator><lastBuildDate>Thu, 03 Sep 2026 01:56:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/266666.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 12 May 2010 11:08:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 11:08:04 GMT]]></title><description><![CDATA[<p>gibt es in C++ eine Methode die<br />
dem sizeof() aus ANSI C entspricht?<br />
Schon mal Danke für eure Hilfe<br />
mit freundlichen Grüßen<br />
sizeof() <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/1896162</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896162</guid><dc:creator><![CDATA[sizeof()]]></dc:creator><pubDate>Wed, 12 May 2010 11:08:04 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 11:16:27 GMT]]></title><description><![CDATA[<p>sizeof() wird ebenfalls in C++ benutzt. Allerdings wüsste ich jetzt keinen wirklichen Einsatzzweck dafür.</p>
<p>Was willst du denn machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896167</guid><dc:creator><![CDATA[Janjan]]></dc:creator><pubDate>Wed, 12 May 2010 11:16:27 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 11:34:32 GMT]]></title><description><![CDATA[<p>Ich möchte in einer Datei<br />
eine Zeile zwei mal einlesen.<br />
Die variablen unterscheiden sich aber vom Datentyp,<br />
also dachte ich mir einmal ein file &gt;&gt; i_zahl;<br />
dann file.seekg (-sizeof(i_zahl), ios::cur);<br />
und file &gt;&gt; s_string;</p>
<p>Aber da wir kein C++ mit ANSI C Code vermischen sollen,<br />
habe ich jetzt nach einer C++ Methode für sizeof(); gesucht <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>Wäre das ganze auch mit einem cast möglich?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896178</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896178</guid><dc:creator><![CDATA[sizeof()]]></dc:creator><pubDate>Wed, 12 May 2010 11:34:32 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 11:36:19 GMT]]></title><description><![CDATA[<p>Janjan schrieb:</p>
<blockquote>
<p>sizeof() wird ebenfalls in C++ benutzt. Allerdings wüsste ich jetzt keinen wirklichen Einsatzzweck dafür.</p>
<p>Was willst du denn machen?</p>
</blockquote>
<p>Einsatzzwecke dafür gibt es schon. Es wird in üblichem C++ Code eher wenig angetroffen, aber es gibt z.B ein paar Hacks, welche damit nette Sachen erlauben. Wenn man Speicher selbst verwaltet ist es auch sehr nützlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896181</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 12 May 2010 11:36:19 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 11:38:47 GMT]]></title><description><![CDATA[<p>Da liegt ein Denkfehler vor. In der Datei steht die Zahl als Plain Text, d.h. Ziffer für Ziffer, und nicht im Binärformat. Der Plaintext kann zwischen 1 und 10 Zeichen lang sein (bei 32Bit Integer Zahlen, wobei sizeof( int ) für 32Bit Integer 4 zurückliefert. Dein Vorhaben funktioniert also nur für Zahlen von 1000-9999 und dreistelligen Vorzeichenbehafteten Zahlen.<br />
Lies die Zeile komplett in einen string und werte den string zweimal aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896183</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Wed, 12 May 2010 11:38:47 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 11:39:40 GMT]]></title><description><![CDATA[<p>dein seekg würde nicht das machen was du erwartest. sizeof(i_zahl) gibt die Anzahl bytes zurück die deine Zahlvariable im Speicher belegt. Das ist wahrscheinlich nicht die Anzahl der Zeichen, die die lesbare Darstellung dieser Zahl in der Datei belegt.<br />
Ich würd einfach erst den String aus der Datei lesen, dann mit einem stringstream diesen String in eine Zahl verwadeln - schon hast du sowohl die Zahl als auch die Zeichendarstellung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896184</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 12 May 2010 11:39:40 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 12:12:49 GMT]]></title><description><![CDATA[<p>Janjan schrieb:</p>
<blockquote>
<p>sizeof() wird ebenfalls in C++ benutzt. Allerdings wüsste ich jetzt keinen wirklichen Einsatzzweck dafür.</p>
</blockquote>
<p>Wie erwähnt gibt es schon ein paar Einsatzzwecke, allerdings vor allem im Low-Level-Bereich. Einige findet man jedoch auch auf sehr hohem Abstraktionslevel, beispielsweise kann man im Zusammenhang mit Template(meta)programmierung man ein paar interessante Nebeneffekte des <code>sizeof</code> -Operators ausnutzen. Dieser erlaubt es, einen vollständig bekannten Typ sicherzustellen (für Smart-Pointer-Destruktoren von essentieller Bedeutung) oder Metafunktionen zur Erkennung von Konvertierbarkeit und Klassenhierarchien zu schreiben (dafür braucht man übrigens noch was Ungewöhnliches: Die Ellipse). Vielleicht meinte drakon sogar das mit den netten Hacks... <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>
<p>Wie auch immer, für das Problem hier ist <code>sizeof</code> jedenfalls der falsche Ansatz.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896203</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896203</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 12 May 2010 12:12:49 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 13:07:32 GMT]]></title><description><![CDATA[<p>sizeof() schrieb:</p>
<blockquote>
<p>Aber da wir kein C++ mit ANSI C Code vermischen sollen,<br />
habe ich jetzt nach einer C++ Methode für sizeof(); gesucht <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>Nur zur Klarstellung:<br />
<code>sizeof</code> ist im C++ Standard explizit vorhanden, gehört also zur Sprache C++ <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>
<p>DocShoe schrieb:</p>
<blockquote>
<p>Lies die Zeile komplett in einen string und werte den string zweimal aus.</p>
</blockquote>
<p>pumuckl schrieb:</p>
<blockquote>
<p>Ich würd einfach erst den String aus der Datei lesen, dann mit einem stringstream diesen String in eine Zahl verwadeln - schon hast du sowohl die Zahl als auch die Zeichendarstellung.</p>
</blockquote>
<p>Oder man kann auch mit<a href="http://www.cplusplus.com/reference/iostream/istream/tellg/" rel="nofollow"> <code>tellg</code> </a>die aktuelle Position speichern, auslesen und danach mit<a href="http://www.cplusplus.com/reference/iostream/istream/seekg/" rel="nofollow"> <code>seekg</code> </a>wieder zur vorherigen Position springen. Man sollte aber nicht vergessen, die Eingabe zu prüfen, ob sie erfolgreich war <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>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896236</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 12 May 2010 13:07:32 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 15:03:09 GMT]]></title><description><![CDATA[<blockquote>
<p>Oder man kann auch mit tellg die aktuelle Position speichern, auslesen und danach mit seekg wieder zur vorherigen Position springen. Man sollte aber nicht vergessen, die Eingabe zu prüfen, ob sie erfolgreich war <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>super so werd ich es machen <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>
<p>Nochmal vielen Dank für eure Hilfe und<br />
die ganzen Tips <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/1896301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896301</guid><dc:creator><![CDATA[sizeof()]]></dc:creator><pubDate>Wed, 12 May 2010 15:03:09 GMT</pubDate></item><item><title><![CDATA[Reply to sizeof() in C++? on Wed, 12 May 2010 20:18:07 GMT]]></title><description><![CDATA[<p>Janjan schrieb:</p>
<blockquote>
<p>sizeof() wird ebenfalls in C++ benutzt. Allerdings wüsste ich jetzt keinen wirklichen Einsatzzweck dafür.</p>
</blockquote>
<p>Och da gibt's aber einiges.<br />
Angefangen vom Byte-Klauben mit PODs über Templates (z.B. ermitteln der &quot;optimalen&quot; Anzahl der Page-Grösse einer std::deque o.ä.) bis zu ganz wilden Geschichten ala boost::optional.<br />
Und natürlich das allseits beliebte <code>sizeof(array)/sizeof(array[0])</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1896454</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1896454</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 12 May 2010 20:18:07 GMT</pubDate></item></channel></rss>