<?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[Datei mit bestimmten Größe??]]></title><description><![CDATA[<p>Hallo C-Meister,</p>
<p>ich brauche wirklich Hilfe!</p>
<p>Ich muss für mein Projekt eine exakt x (von Benutzer eingegeben) Byte große Datei(genauer: eine Variable oder ein Paket) ( 1. Bedingung),die drei Integer-Zahlen (3*sizeof(int)=12 Byte) enthält(2. Bedingung), erstellen.</p>
<p>es soll bestens ein Array sein.<br />
<div class="plugin-markdown"><input type="checkbox" id="checkbox27916" checked="true" /><label for="checkbox27916">in character-Typ mit x = so viele Byte sein ( sizeof(Array)=x Byte!!), aber dann wird die 2. Bedingung nicht erfüllt. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></label></div></p>
<p>malloc() war meine erste Idee. trotzdem komme ich damit auch nicht zurecht, weil man mit malloc nur einen Speicherbereich erstellen kann. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
<p>Kurz gesagt, ich brauche einfach nur Hinweise und Ideen ( Maßnahmen).<br />
Konkrete Lösung wäre nett aber nicht unbedingt (Zeit sparen für euch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> :p )</p>
<p>Ich freue mich auf und bedanke mich für jede Antwort!</p>
<p>Grusssssssss</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/256812/datei-mit-bestimmten-größe</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 10:09:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/256812.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 18 Dec 2009 09:45:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 09:59:02 GMT]]></title><description><![CDATA[<p>Hallo C-Meister,</p>
<p>ich brauche wirklich Hilfe!</p>
<p>Ich muss für mein Projekt eine exakt x (von Benutzer eingegeben) Byte große Datei(genauer: eine Variable oder ein Paket) ( 1. Bedingung),die drei Integer-Zahlen (3*sizeof(int)=12 Byte) enthält(2. Bedingung), erstellen.</p>
<p>es soll bestens ein Array sein.<br />
<div class="plugin-markdown"><input type="checkbox" id="checkbox27916" checked="true" /><label for="checkbox27916">in character-Typ mit x = so viele Byte sein ( sizeof(Array)=x Byte!!), aber dann wird die 2. Bedingung nicht erfüllt. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></label></div></p>
<p>malloc() war meine erste Idee. trotzdem komme ich damit auch nicht zurecht, weil man mit malloc nur einen Speicherbereich erstellen kann. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
<p>Kurz gesagt, ich brauche einfach nur Hinweise und Ideen ( Maßnahmen).<br />
Konkrete Lösung wäre nett aber nicht unbedingt (Zeit sparen für euch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> :p )</p>
<p>Ich freue mich auf und bedanke mich für jede Antwort!</p>
<p>Grusssssssss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1824353</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824353</guid><dc:creator><![CDATA[hannoo]]></dc:creator><pubDate>Fri, 18 Dec 2009 09:59:02 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 11:40:11 GMT]]></title><description><![CDATA[<p>Das ist nicht möglich, da du eben in einem Speicherbereich von 5 Bytes (was der Benutzer ja eingeben kann) keine 12 Bytes gespeichert werden können, ob das jetzt eine Datei oder ein Array ist.<br />
Wenn du dich darauf verlassen kannst, dass eine Zahl &gt;=12 eingegeben wird, kannst du einfach new byte[n] verwenden.</p>
<pre><code class="language-cpp">typedef unsigned int uint;
typedef unsigned char byte;

class ContainerFuerDreiIntsMitDemZusatzfeatureKommaBeliebigVielSpeicherBelegenZuKoennen
{
  public:
    ContainerFuerDreiIntsMitDemZusatzfeatureKommaBeliebigVielSpeicherBelegenZuKoennen(uint nBytes) : mem(new byte[nBytes]) {}
    ~ContainerFuerDreiIntsMitDemZusatzfeatureKommaBeliebigVielSpeicherBelegenZuKoennen() {delete[] mem;}
    int&amp; getInt(int index)
    {
      assert(index&gt;=0 &amp;&amp; index&lt;3);
      return *(reinterpret_cast&lt;int*&gt;(mem)+index);
    }
  private:
    byte* mem;
];
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1824395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824395</guid><dc:creator><![CDATA[Athar]]></dc:creator><pubDate>Fri, 18 Dec 2009 11:40:11 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 13:06:51 GMT]]></title><description><![CDATA[<p>Ich vermute mal, dass die Aufgabenstellung etwas unverständlich formuliert ist. Gibt der Benutzer tatsächlich die Anzahl der <strong>Bytes</strong> ein, oder nicht doch etwa die Anzahl der <strong>Elemente</strong>? In beiden Fällen bietet std::vector alles, was du brauchst, lediglich die Berechnung der Vektorgrösse ist unterschiedlich. Da std::vector intern einen linearen Speicherblock belegt ist die Adresse des ersten Elements gleichzeitig der Beginn des Speicherblocks.</p>
<pre><code class="language-cpp">#include &lt;cmath&gt;
#include &lt;vector&gt;

int main()
{
   std::vector&lt;int&gt; Data;

   // Fall 1: Anzahl der Bytes wird eingegeben
   Data.resize( ceil( static_cast&lt;double&gt;( ByteCount ) / sizeof( int ) );

   // Fall 2: Anzahl der Elemente wird eingegeben
   Data.resize( ElementCount );

   // Zeiger auf Speicherbereich bestimmen (Achtung: Data darf nicht leer sein)
   if( false == Data.empty() )
   {
      char* MemBlock = reinterpret_cast&lt;char*&gt;( &amp;Data.front() );
   }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1824445</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824445</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Fri, 18 Dec 2009 13:06:51 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 14:17:25 GMT]]></title><description><![CDATA[<p>DocShoe schrieb:</p>
<blockquote>
<pre><code class="language-cpp">Data.resize( ceil( static_cast&lt;double&gt;( ByteCount ) / sizeof( int ) );
</code></pre>
</blockquote>
<p>Ich schlage vor, ganzzahlig zu bleiben.</p>
<pre><code class="language-cpp">Data.resize( (ByteCount + (sizeof(int)-1)) / sizeof(int) );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1824488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824488</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 18 Dec 2009 14:17:25 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 15:04:51 GMT]]></title><description><![CDATA[<p>Abgesehen von der fehlenden dritten schliessenden Klammer mache ich das auch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1824511</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824511</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Fri, 18 Dec 2009 15:04:51 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 15:14:25 GMT]]></title><description><![CDATA[<p>Aber wieso zu <code>double</code> casten, um dann doch wieder abzurunden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1824517</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824517</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 18 Dec 2009 15:14:25 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 15:18:32 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Aber wieso zu <code>double</code> casten, um dann doch wieder abzurunden?</p>
</blockquote>
<p>man 3 ceil</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1824519</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824519</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 18 Dec 2009 15:18:32 GMT</pubDate></item><item><title><![CDATA[Reply to Datei mit bestimmten Größe?? on Fri, 18 Dec 2009 15:27:27 GMT]]></title><description><![CDATA[<p>Ups, sorry, peinlicher Fehler... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1824524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1824524</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 18 Dec 2009 15:27:27 GMT</pubDate></item></channel></rss>