<?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[Ausgabeformatierung mit unsigned char]]></title><description><![CDATA[<p>Folgendes Problem:</p>
<pre><code class="language-cpp">for(x=0;x&lt;=laenge-10;x+=10)			// Zählschleife pro auszugebende Zeile
			{

				tabelle.Format(&quot; %5d \t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X&quot;,zeilen,
 					ff=buffer[x]  ,ff=buffer[x+1],
					ff=buffer[x+2],ff=buffer[x+3],
 					ff=buffer[x+4],ff=buffer[x+5],
					ff=buffer[x+6],ff=buffer[x+7],
 					ff=buffer[x+8],ff=buffer[x+9]);		// zum Ausgabestring dazuschreiben (eine Zeile)
				anzeige[y]=tabelle;					// Zeilen separat zwischenspeichern
 				zeilen++;							// Zeilen zählen
 				y++;								// Zeiger auf Daten weiterzählen
			}
</code></pre>
<p>mit diesem Code wollen wir eine eingelesene ASCII Datei im Hexaformat wieder ausgeben. Die Zeichen sind im Feld buffer[], Format char(!). Buffer ist ein dynamisches Feld, d.h. es wir je nach Größe der Datei angelegt und beschrieben.<br />
Komischerweise kann es nicht gleich als unsigned char angelegt werden! Warum?</p>
<p>tabelle ist CString. Wenn jetzt eine Zeichen mit einem negativen Wert kommt, wird die Hexausgabe seltsam, denn dann gibt es die führenden FF (Bsp:&quot;FFFFFFA2&quot;) mit aus. Das gilt es zu verhindern. Deshalb haben wir die Variable ff von Typ unsigned char eingeführt und so wie oben eingebaut. Jetzt funktioniert die Ausgabe im Debugmodus, allerding geht es nicht im Releasemodus.</p>
<p>Es liegt definitiv an dieser Stelle. Wenn die Variable FF wieder entfernt wird, dann funktioniert es auch in der Release Version, allerdings mit versauen die &quot;negativen Zeichen&quot; die Ausgabe. Kennt jemand dieses Problem und weiß vielleicht Abhilfe.</p>
<p>Danke schon jetzt!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/65802/ausgabeformatierung-mit-unsigned-char</link><generator>RSS for Node</generator><lastBuildDate>Fri, 05 Jun 2026 15:42:34 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/65802.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 22 Feb 2004 15:31:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ausgabeformatierung mit unsigned char on Sun, 22 Feb 2004 15:31:51 GMT]]></title><description><![CDATA[<p>Folgendes Problem:</p>
<pre><code class="language-cpp">for(x=0;x&lt;=laenge-10;x+=10)			// Zählschleife pro auszugebende Zeile
			{

				tabelle.Format(&quot; %5d \t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X\t%02X&quot;,zeilen,
 					ff=buffer[x]  ,ff=buffer[x+1],
					ff=buffer[x+2],ff=buffer[x+3],
 					ff=buffer[x+4],ff=buffer[x+5],
					ff=buffer[x+6],ff=buffer[x+7],
 					ff=buffer[x+8],ff=buffer[x+9]);		// zum Ausgabestring dazuschreiben (eine Zeile)
				anzeige[y]=tabelle;					// Zeilen separat zwischenspeichern
 				zeilen++;							// Zeilen zählen
 				y++;								// Zeiger auf Daten weiterzählen
			}
</code></pre>
<p>mit diesem Code wollen wir eine eingelesene ASCII Datei im Hexaformat wieder ausgeben. Die Zeichen sind im Feld buffer[], Format char(!). Buffer ist ein dynamisches Feld, d.h. es wir je nach Größe der Datei angelegt und beschrieben.<br />
Komischerweise kann es nicht gleich als unsigned char angelegt werden! Warum?</p>
<p>tabelle ist CString. Wenn jetzt eine Zeichen mit einem negativen Wert kommt, wird die Hexausgabe seltsam, denn dann gibt es die führenden FF (Bsp:&quot;FFFFFFA2&quot;) mit aus. Das gilt es zu verhindern. Deshalb haben wir die Variable ff von Typ unsigned char eingeführt und so wie oben eingebaut. Jetzt funktioniert die Ausgabe im Debugmodus, allerding geht es nicht im Releasemodus.</p>
<p>Es liegt definitiv an dieser Stelle. Wenn die Variable FF wieder entfernt wird, dann funktioniert es auch in der Release Version, allerdings mit versauen die &quot;negativen Zeichen&quot; die Ausgabe. Kennt jemand dieses Problem und weiß vielleicht Abhilfe.</p>
<p>Danke schon jetzt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/465315</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/465315</guid><dc:creator><![CDATA[sachse98]]></dc:creator><pubDate>Sun, 22 Feb 2004 15:31:51 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabeformatierung mit unsigned char on Sun, 22 Feb 2004 19:52:28 GMT]]></title><description><![CDATA[<p>Wieso sollte man das Array nicht sofort als unsigned char-array anlegen können?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/465419</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/465419</guid><dc:creator><![CDATA[dEUs]]></dc:creator><pubDate>Sun, 22 Feb 2004 19:52:28 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabeformatierung mit unsigned char on Mon, 23 Feb 2004 15:56:40 GMT]]></title><description><![CDATA[<p>man muss nur die Fehlermeldung lesen, kapieren und umsetzen, wahrscheinlich hat auch die dazwischenliegende Nacht geholfen <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>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/466061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/466061</guid><dc:creator><![CDATA[sachse98]]></dc:creator><pubDate>Mon, 23 Feb 2004 15:56:40 GMT</pubDate></item></channel></rss>