<?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[circle buffer]]></title><description><![CDATA[<p>guten Abend</p>
<p>folgendes Problem:</p>
<p>Pufferspeicher mit einer festen Größe. Also Speicher wird immer wieder beschrieben nachdem er gelesen wurde...</p>
<p>Ich soll alle Daten, die noch im Puffer sind, mit einer print-Methode ausgeben.<br />
Die Ausgabe soll mittels einer Schleife ausgeben werden.</p>
<p>wichtige Attribute:<br />
- Größe,<br />
- *pointer auf Startadresse(0) des Speichers<br />
- Leseindex, Füllstand(vom Puffer) // dürfen nicht verändert werden</p>
<p>kann ich das so machen oder geht das am Prinzip von dem speicher vorbei..?</p>
<pre><code>pointer+LeseIndex; // zeigt nun auf das erste Element des puffers

for(int i=Füllstand;i&gt;0;i--){ // so oft durchlaufen wie Elemente im Puffer
cout &lt;&lt; *pointer; // gibt ersten Wert des Puffers aus
pointer++; // aufs nächste Element zeigen
</code></pre>
<p>Ist der Puffer nun am Ende des Arrays angelangt kann er ja bei Array[0] weiter gehen. Dort sind die weiteren Werte gespeichert, falls vorhanden.</p>
<p>Kann ich das einfach so machen??</p>
<pre><code>int counter=leseindex;

for(.......
pointer++; 

counter++; //Zählt den Index mit
if(Größe&lt;=counter){ // überprüft ob schon das ende des Arrays ereicht wurde
pointer=Array; } //gehe zum Start des Arrays
counter=0;
}
</code></pre>
<p>danke und greets<br />
stto <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/332713/circle-buffer</link><generator>RSS for Node</generator><lastBuildDate>Mon, 27 Apr 2026 20:41:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/332713.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 May 2015 16:03:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to circle buffer on Mon, 18 May 2015 16:03:16 GMT]]></title><description><![CDATA[<p>guten Abend</p>
<p>folgendes Problem:</p>
<p>Pufferspeicher mit einer festen Größe. Also Speicher wird immer wieder beschrieben nachdem er gelesen wurde...</p>
<p>Ich soll alle Daten, die noch im Puffer sind, mit einer print-Methode ausgeben.<br />
Die Ausgabe soll mittels einer Schleife ausgeben werden.</p>
<p>wichtige Attribute:<br />
- Größe,<br />
- *pointer auf Startadresse(0) des Speichers<br />
- Leseindex, Füllstand(vom Puffer) // dürfen nicht verändert werden</p>
<p>kann ich das so machen oder geht das am Prinzip von dem speicher vorbei..?</p>
<pre><code>pointer+LeseIndex; // zeigt nun auf das erste Element des puffers

for(int i=Füllstand;i&gt;0;i--){ // so oft durchlaufen wie Elemente im Puffer
cout &lt;&lt; *pointer; // gibt ersten Wert des Puffers aus
pointer++; // aufs nächste Element zeigen
</code></pre>
<p>Ist der Puffer nun am Ende des Arrays angelangt kann er ja bei Array[0] weiter gehen. Dort sind die weiteren Werte gespeichert, falls vorhanden.</p>
<p>Kann ich das einfach so machen??</p>
<pre><code>int counter=leseindex;

for(.......
pointer++; 

counter++; //Zählt den Index mit
if(Größe&lt;=counter){ // überprüft ob schon das ende des Arrays ereicht wurde
pointer=Array; } //gehe zum Start des Arrays
counter=0;
}
</code></pre>
<p>danke und greets<br />
stto <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453960</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453960</guid><dc:creator><![CDATA[stto]]></dc:creator><pubDate>Mon, 18 May 2015 16:03:16 GMT</pubDate></item><item><title><![CDATA[Reply to circle buffer on Mon, 18 May 2015 17:35:50 GMT]]></title><description><![CDATA[<p>Da ist einiges schwer durcheinander. Versuch den Code mal sauber zu schreiben, anstatt nur schnell im Foreneditor hinzuklatschen. Sonst weiß man nicht, was echte Fehler sind oder was du bloß falsch aufgeschrieben hast.</p>
<p>Die Grundidee ist ok, die Umsetzung falsch. Allgemeine Alternative, die eventuell besser (und mit Sicherheit besser lesbar) ist: Modulo.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2453968</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2453968</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Mon, 18 May 2015 17:35:50 GMT</pubDate></item></channel></rss>