<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Extracting digits from a integer</title>
		<link>http://www.allegro.cc/forums/view/591298</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 13 May 2007 05:35:22 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Answers in this post are&gt;&gt;
</p><div class="source-code snippet"><div class="inner"><pre>    <span class="k1">int</span> score <span class="k3">=</span> <span class="n">656</span><span class="k2">;</span>
    <span class="k1">char</span> scorestring<span class="k2">[</span><span class="n">50</span><span class="k2">]</span><span class="k2">;</span>
    <a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>scorestring, <span class="k1">sizeof</span><span class="k2">(</span>scorestring<span class="k2">)</span>, <span class="s">"%d"</span>, score<span class="k2">)</span><span class="k2">;</span>
    <span class="k1">int</span> scorelength <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>scorestring<span class="k2">)</span><span class="k2">;</span>
    <span class="k1">for</span> <span class="k2">(</span>scoredigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> scoredigit <span class="k3">&lt;</span> scorelength<span class="k2">;</span> scoredigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span>
    <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>activepage, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span> <span class="k3">+</span> <span class="k2">(</span>scoredigit <span class="k3">*</span> <span class="n">17</span><span class="k2">)</span>, <span class="n">0</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">255</span>, <span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%i"</span>, scorestring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>scorelength <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> scoredigit<span class="k2">)</span><span class="k2">]</span> <span class="k3">-</span> <span class="n">48</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k2">}</span>
</pre></div></div><p>

also replacing the snprintf(scorestring, sizeof(scorestring), &quot;%d&quot;, score); with
</p><div class="source-code snippet"><div class="inner"><pre>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>score, scorestring, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
will do the same thing.  But it is considered non standard.</p><p>Original question.<br />I am using a new numbering system in my game where as before I just put the text on the screen.  What I can not figure out is how to.</p><p>1. Find out how many places my score uses.  I.E. If score was 1423 it would be 4 places</p><p>2. How to take just 1 number from the score.  I.E. 1423 is the score and I wanted just the 3rd number I would have 4.</p><p>I used to have an old program in Qb that a Binary number and made it decimal.  Dont know how acurate it was but it did what I am looking for or close to it.</p><div class="source-code snippet"><div class="inner"><pre>DIM BinNum<span class="k2">(</span><span class="n">1</span> TO <span class="n">300</span><span class="k2">)</span> AS STRING, NStringNum<span class="k2">(</span><span class="n">1</span> TO <span class="n">300</span><span class="k2">)</span> AS LONG
CLS
INPUT <span class="s">"Binary String:_ "</span>, BinNum$
FOR LoopStart <span class="k3">=</span> <span class="n">1</span> TO LEN<span class="k2">(</span>BinNum$<span class="k2">)</span>
 BinNum$<span class="k2">(</span>LoopStart<span class="k2">)</span> <span class="k3">=</span> MID$<span class="k2">(</span>BinNum$, LoopStart, <span class="n">1</span><span class="k2">)</span>
 NStringNum<span class="k2">(</span>LoopStart<span class="k2">)</span> <span class="k3">=</span> VAL<span class="k2">(</span>BinNum$<span class="k2">(</span>LoopStart<span class="k2">)</span><span class="k2">)</span>
NEXT
FOR LoopStart <span class="k3">=</span> <span class="n">1</span> TO LEN<span class="k2">(</span>BinNum$<span class="k2">)</span>
 DecimalNum <span class="k3">=</span> DecimalNum <span class="k3">+</span> NStringNum<span class="k2">(</span>LoopStart<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span><span class="n">2</span> ^ <span class="k2">(</span>LEN<span class="k2">(</span>BinNum$<span class="k2">)</span> <span class="k3">-</span> LoopStart<span class="k2">)</span><span class="k2">)</span>
NEXT
PRINT DecimalNum
</pre></div></div><p>

other then the example I don&#39;t know what it is called if even pointed in the correct direction I could do a little research on it. But I never really learned more then the basics of C/C++ and when straight into allegro.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Mon, 07 May 2007 02:44:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>sprintf(someChar, &quot;%i&quot;, score)?</p><p>And then work with someChar to get the lengths and digits.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Mon, 07 May 2007 02:53:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>For positive numbers:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> digit_count <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>num<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span><span class="k2">;</span>

<span class="k1">int</span> digit_value <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>num <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, place<span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Mon, 07 May 2007 03:00:24 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
int digit_count = (int)log10(num) + 1;
</p></div></div><p>

Just don&#39;t try it on 0.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jakub Wasilewski)</author>
		<pubDate>Mon, 07 May 2007 03:14:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Thanks that was what was needed</p><div class="source-code snippet"><div class="inner"><pre>digit_count <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>score<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span><span class="k2">;</span>
</pre></div></div><p>
</p><div class="source-code snippet"><div class="inner"><pre>digit_value <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>score <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, <span class="n">1</span><span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">;</span>
</pre></div></div><p>
</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>active_page, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span>, <span class="n">0</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">255</span>,  <span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, 
<span class="s">"Digits in score %i Digit Value %i"</span>, digit_count, digit_value<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>



 Only thing is if score is 0 digit_count returns a large negitive number but that is easy to get around with a simple check if the number is not positive just post a 0 score.</p><p>Thanks a lot.</p><p>Well at the very beginning of the game the score is going to be 0 so that value will be returned until the score is &gt;0</p><p>Finished Result:
</p><div class="source-code snippet"><div class="inner"><pre>digit_count <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>score <span class="k3">+</span> totalscore<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span><span class="k2">;</span>
    <span class="k1">for</span> <span class="k2">(</span>scoredigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> digit_count <span class="k3">&gt;</span> scoredigit<span class="k2">;</span> scoredigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span>
        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span>score <span class="k3">+</span> totalscore<span class="k2">)</span> <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, scoredigit<span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">]</span>, <span class="n">275</span> <span class="k3">-</span> scoredigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k2">}</span>
    digit_count <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>lives<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span><span class="k2">;</span>
    <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>lives<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span> <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span>
        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>, <span class="n">275</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k1">for</span> <span class="k2">(</span>livesdigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>lives<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span> <span class="k3">&gt;</span> livesdigit<span class="k2">;</span> livesdigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span>
        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>lives <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, livesdigit<span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">]</span>, <span class="n">100</span> <span class="k3">-</span> livesdigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k2">}</span>
</pre></div></div><p>

I have one last problem with this though if score + totalscore = 1000 it passes 0000 and if score + totalscore = 2000 it passes 1000 till 10000 it passes 19000 for some reason the 4th digit doesn&#39;t display properly until the score = 1001 and so on.  I don&#39;t see where the problem is any one else?</p><p>Some where in here is the problem I just can&#39;t seem to isolate it.</p><div class="source-code snippet"><div class="inner"><pre>digit_count <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_543.html" target="_blank">log10</a><span class="k2">(</span>score <span class="k3">+</span> totalscore<span class="k2">)</span> <span class="k3">+</span> <span class="n">1</span><span class="k2">;</span>
    <span class="k1">for</span> <span class="k2">(</span>scoredigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> digit_count <span class="k3">&gt;</span> scoredigit<span class="k2">;</span> scoredigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span>
        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span>score <span class="k3">+</span> totalscore<span class="k2">)</span> <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, scoredigit<span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">]</span>, <span class="n">275</span> <span class="k3">-</span> scoredigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k2">}</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Mon, 07 May 2007 07:56:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I wondered if you were doing something like this. It seems to me that you are reinventing the printf function:
</p><div class="source-code snippet"><div class="inner"><pre>myfont <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_font" target="_blank"><span class="a">load_font</span></a><span class="k2">(</span><span class="s">"font.bmp"</span><span class="k2">)</span><span class="k2">;</span>
<a href="http://www.allegro.cc/manual/textprintf_right_ex" target="_blank"><span class="a">textprintf_right_ex</span></a><span class="k2">(</span>active_page, myfont, <span class="n">275</span>,<span class="n">15</span>, <span class="k3">-</span><span class="n">1</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%d"</span>, score<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
The above assumes a multi-color font. Replace the first -1 by the color if your font is a solid color.</p><p>If you really must do your own thing here (and I doubt it), I&#39;d stick with the sprintf way because it&#39;s easier to read:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">char</span> score_str<span class="k2">[</span><span class="n">100</span><span class="k2">]</span><span class="k2">;</span>
<a href="http://www.delorie.com/djgpp/doc/libc/libc_737.html" target="_blank">sprintf</a><span class="k2">(</span>score_str, <span class="s">"%i"</span>, score<span class="k2">)</span><span class="k2">;</span>

<span class="k1">int</span> x <span class="k3">=</span> <span class="n">275</span>, y <span class="k3">=</span> <span class="n">15</span><span class="k2">;</span>
<span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>score_str<span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span> i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> <span class="k3">-</span><span class="k3">-</span>i<span class="k2">)</span>
<span class="k2">{</span>
  <span class="k1">int</span> digit_value <span class="k3">=</span> score_str<span class="k3">&lt;</span>i&gt; <span class="k3">-</span> <span class="s">'0'</span><span class="k2">;</span>

  <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span>digit_value<span class="k2">]</span>, x, y<span class="k2">)</span><span class="k2">;</span>
  x-<span class="k3">=</span> <span class="n">17</span><span class="k2">;</span>
<span class="k2">}</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Mon, 07 May 2007 08:27:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="c">//cant remember header file c++</span></td></tr><tr><td class="number">2</td><td>&#160;</td></tr><tr><td class="number">3</td><td>&#160;</td></tr><tr><td class="number">4</td><td><span class="k1">extern</span> string NumberToString<span class="k2">(</span><span class="k1">int</span> Number<span class="k2">)</span></td></tr><tr><td class="number">5</td><td><span class="k2">{</span></td></tr><tr><td class="number">6</td><td>  ostringstream converter<span class="k2">;</span></td></tr><tr><td class="number">7</td><td>  converter <span class="k3">&lt;</span><span class="k3">&lt;</span> Number<span class="k2">;</span></td></tr><tr><td class="number">8</td><td>  <span class="k1">return</span> converter.str<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k2">}</span></td></tr><tr><td class="number">10</td><td>&#160;</td></tr><tr><td class="number">11</td><td><span class="k1">int</span> num<span class="k3">=</span> <span class="n">346</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td>&#160;</td></tr><tr><td class="number">13</td><td><span class="k1">if</span><span class="k2">(</span>NumberToString<span class="k2">(</span>num<span class="k2">)</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="s">'0'</span><span class="k2">)</span></td></tr><tr><td class="number">14</td><td><span class="k2">{</span></td></tr><tr><td class="number">15</td><td>&#160;</td></tr><tr><td class="number">16</td><td><span class="k2">}</span></td></tr><tr><td class="number">17</td><td><span class="k1">if</span><span class="k2">(</span>NumberToString<span class="k2">(</span>num<span class="k2">)</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="s">'1'</span><span class="k2">)</span></td></tr><tr><td class="number">18</td><td><span class="k2">{</span></td></tr><tr><td class="number">19</td><td>&#160;</td></tr><tr><td class="number">20</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>

Edit: wow i type slow 3 post came out of nowhere<br />Edit2: i think my way is better because you can get ohold of the 1st 2nd and nth numbers</p><p>Edit3:
</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
the 4th digit doesn&#39;t display properly until the score = 1001 and so on. I don&#39;t
</p></div></div><p> i think your bug lie in the (int) casting
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (piccolo)</author>
		<pubDate>Mon, 07 May 2007 08:38:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
i think your bug lie in the (int) casting
</p></div></div><p>

explaing please.</p><p>Whats odd is that if I</p><div class="source-code snippet"><div class="inner"><pre>
<a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span>score <span class="k3">+</span> totalscore<span class="k2">)</span> <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, <span class="n">3</span><span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">]</span>, <span class="n">275</span> <span class="k3">-</span> scoredigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

instead of...</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span>score <span class="k3">+</span> totalscore<span class="k2">)</span> <span class="k3">/</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span><span class="n">10</span>, scoredigit<span class="k2">)</span><span class="k2">)</span> % <span class="n">10</span><span class="k2">]</span>, <span class="n">275</span> <span class="k3">-</span> scoredigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

It shows the value as correct and if I use </p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a><span class="k3">/</span><span class="n">2</span> <span class="k3">-</span> <span class="k2">(</span><span class="n">4</span><span class="k3">*</span><span class="n">19</span><span class="k2">)</span> <span class="k3">-</span> scoredigit <span class="k3">*</span> <span class="n">30</span>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k3">/</span><span class="n">2</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%i "</span>, scoredigit<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

it also shows the correct values but when I use the variables only the thousands place is messed up and only when the value is exact 1000,2000,10000 ect.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Mon, 07 May 2007 09:58:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hey Circle , this might help.</p><p>  Until I decide to write my own function to convert integers into strings , I&#39;ve been using Itoa </p><p>Link to usage at cplusplus.com<br /><a href="http://www.cplusplus.com/reference/clibrary/cstdlib/itoa.html">http://www.cplusplus.com/reference/clibrary/cstdlib/itoa.html</a></p><p>Example
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="k1">int</span> score <span class="k3">=</span> <span class="n">12345</span><span class="k2">;</span></td></tr><tr><td class="number">2</td><td><span class="k1">char</span> numberstring<span class="k2">[</span><span class="n">50</span><span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">3</td><td><span class="k1">for</span> <span class="k2">(</span>x <span class="k3">=</span> <span class="n">0</span> <span class="k2">;</span> x <span class="k3">&lt;</span> <span class="n">50</span> <span class="k2">;</span> x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span>numberstring<span class="k2">[</span>x<span class="k2">]</span> <span class="k3">=</span> <span class="s">'\0'</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">4</td><td>&#160;</td></tr><tr><td class="number">5</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>score , numberstring , <span class="n">10</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">6</td><td>&#160;</td></tr><tr><td class="number">7</td><td><span class="c">// Now "12345" is stored in numberstring</span></td></tr><tr><td class="number">8</td><td><span class="c">// use strlen to find out it is 5 digits</span></td></tr><tr><td class="number">9</td><td><span class="c">// then access the digit like this</span></td></tr><tr><td class="number">10</td><td><span class="k1">int</span> score_length <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>numberstring<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td>&#160;</td></tr><tr><td class="number">12</td><td><span class="c">// example if you want the hundreds digit this will access it</span></td></tr><tr><td class="number">13</td><td>numberstring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>score_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> <span class="n">2</span><span class="k2">)</span><span class="k2">]</span><span class="k2">;</span> </td></tr><tr><td class="number">14</td><td>&#160;</td></tr><tr><td class="number">15</td><td><span class="c">// If you are looking for the 10^x digit place this should do it</span></td></tr><tr><td class="number">16</td><td>numberstring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>score_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> x<span class="k2">)</span><span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td><span class="c">// x = 0 is ones place and so on.</span></td></tr></tbody></table></div></div><p>

Then if you wanted to convert the digit you found from numberstring use <br />atoi (in stdlib.h) to change it back to an integer.</p><p>Hope this was helpful.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Mon, 07 May 2007 10:00:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok BIG thanks for all the help from everyone you all are great.  </p><p>Ended up with </p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>score <span class="k3">+</span> totalscore, scorestring, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
    <a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>lives, livesstring, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k1">int</span> score_length <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>scorestring<span class="k2">)</span><span class="k2">;</span>
    <span class="k1">int</span> lives_length <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>livesstring<span class="k2">)</span><span class="k2">;</span>
    <span class="k1">for</span> <span class="k2">(</span>scoredigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> scoredigit <span class="k3">&lt;</span> score_length<span class="k2">;</span> scoredigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span>
        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span>scorestring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>score_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> scoredigit<span class="k2">)</span><span class="k2">]</span><span class="k3">-</span> <span class="n">48</span><span class="k2">]</span>, <span class="n">275</span> <span class="k3">-</span> scoredigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
        <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a><span class="k3">/</span><span class="n">2</span> <span class="k3">-</span> <span class="k2">(</span><span class="n">4</span><span class="k3">*</span><span class="n">19</span><span class="k2">)</span> <span class="k3">-</span> scoredigit <span class="k3">*</span> <span class="n">30</span>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k3">/</span><span class="n">2</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%i "</span>, scorestring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>score_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> scoredigit<span class="k2">)</span><span class="k2">]</span><span class="k3">-</span> <span class="n">48</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k2">}</span>
    <span class="k1">for</span> <span class="k2">(</span>livesdigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> livesdigit <span class="k3">&lt;</span> lives_length<span class="k2">;</span> livesdigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span>
        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>active_page, numbers<span class="k2">[</span>livesstring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>lives_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> livesdigit<span class="k2">)</span><span class="k2">]</span><span class="k3">-</span> <span class="n">48</span><span class="k2">]</span>, <span class="n">100</span> <span class="k3">-</span> livesdigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
    <span class="k2">}</span>
</pre></div></div><p>

Works fantastic now and the 4th digit errors are gone.  Odd I am still using all the same variables.  Besides digit_value and digit_count but they were just replaced with lives_length and score_length and either way still worked with the iota.  I also decided to skip a lot of work and just subtract 48 from the itoa value to get the correct numbers I needed.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Mon, 07 May 2007 10:39:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I suggest you use snprintf() instead of itoa(). itoa() is non-standard. Plus, you get some extra memory safety you wouldn&#39;t get otherwise.</p><p>[EDIT]
</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
<span class="source-code"><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a><span class="k3">/</span><span class="n">2</span> <span class="k3">-</span> <span class="k2">(</span><span class="n">4</span><span class="k3">*</span><span class="n">19</span><span class="k2">)</span> <span class="k3">-</span> scoredigit <span class="k3">*</span> <span class="n">30</span>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k3">/</span><span class="n">2</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%i "</span>, scorestring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>score_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> scoredigit<span class="k2">)</span><span class="k2">]</span><span class="k3">-</span> <span class="n">48</span><span class="k2">)</span><span class="k2">;</span></span>
</p></div></div><p>
You&#39;re transforming the digit into ASCII, then transforming it into an integer, and then printing it (which will, again, transform it into ASCII). Just print it as a char instead.<br /><span class="source-code"><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a><span class="k3">/</span><span class="n">2</span> <span class="k3">-</span> <span class="k2">(</span><span class="n">4</span><span class="k3">*</span><span class="n">19</span><span class="k2">)</span> <span class="k3">-</span> scoredigit <span class="k3">*</span> <span class="n">30</span>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k3">/</span><span class="n">2</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%c"</span>, scorestring<span class="k2">[</span><span class="k2">(</span>score_length <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> scoredigit<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span></span></p><p>And might I suggest you stop draw directly to the screen? Use a buffer of some kind.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (gnolam)</author>
		<pubDate>Mon, 07 May 2007 16:58:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>the part that posts to the screen is my test line.  It is removed when things are working correctly.  every thing else uses buffers.</p><p>I am using bitmaps to place the numbers on the screen instead of dealing with fonts.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Mon, 07 May 2007 22:02:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You can have an allegro font and replace the digit bitmaps in that font with your own digit bitmaps. That would save you the hassle of rewriting the functionality (well, too late now <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />), but it may also be faster.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Tue, 08 May 2007 03:20:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I suggest you use snprintf()
</p></div></div><p>
Please, please, please, follow this advice.<br />And use qualifiers on the snprintf call. For example, if you want to display a score acrade-style, with a maximum of 8 digits, and leading zeroes, you&#39;d do:
</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>buf, <span class="s">"%08.8i"</span>, score<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tobias Dammers)</author>
		<pubDate>Wed, 09 May 2007 16:50:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
itoa() is non-standard.
</p></div></div><p>
Nooo!! My whole world just collapsed... <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ron Ofir)</author>
		<pubDate>Wed, 09 May 2007 21:13:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Only one problem the snprintf makes no sence to me in </p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a> <span class="k2">(</span><span class="k1">char</span> <span class="k3">*</span>buffer, size_t n, <span class="k1">const</span> <span class="k1">char</span> <span class="k3">*</span>format,
              ...<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

format.  I was for some reason never able to completely understand those.  How ever if you have a small example I seem to understand those easier.</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>score <span class="k3">+</span> totalscore, scorestring, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">2</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>lives, livesstring, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">3</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_517.html" target="_blank">itoa</a><span class="k2">(</span>mouseh, mousehstring, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">4</td><td>    <span class="k1">int</span> scorelength <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>scorestring<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td>    <span class="k1">int</span> liveslength <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>livesstring<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">6</td><td>    <span class="k1">int</span> mousehlength <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>mousehstring<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">7</td><td>    <span class="k1">for</span> <span class="k2">(</span>mousehdigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> mousehdigit <span class="k3">&lt;</span> mousehlength<span class="k2">;</span> mousehdigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">8</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">9</td><td>        <a href="http://www.allegro.cc/manual/stretch_sprite" target="_blank"><span class="a">stretch_sprite</span></a><span class="k2">(</span>activepage, numbers<span class="k2">[</span>mousehstring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>mousehlength <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> mousehdigit<span class="k2">)</span><span class="k2">]</span> <span class="k3">-</span> <span class="n">48</span><span class="k2">]</span>, <span class="n">500</span> <span class="k3">-</span> mousehdigit <span class="k3">*</span> <span class="n">10</span>, <span class="n">12</span>, <span class="n">10</span>, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">11</td><td>    <span class="k1">for</span> <span class="k2">(</span>scoredigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> scoredigit <span class="k3">&lt;</span> scorelength<span class="k2">;</span> scoredigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">12</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">13</td><td>        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>activepage, numbers<span class="k2">[</span>scorestring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>scorelength <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> scoredigit<span class="k2">)</span><span class="k2">]</span> <span class="k3">-</span> <span class="n">48</span><span class="k2">]</span>, <span class="n">275</span> <span class="k3">-</span> scoredigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">15</td><td>    <span class="k1">for</span> <span class="k2">(</span>livesdigit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> livesdigit <span class="k3">&lt;</span> liveslength<span class="k2">;</span> livesdigit<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">16</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">17</td><td>        <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>activepage, numbers<span class="k2">[</span>livesstring<span class="k2">[</span><span class="k2">(</span><span class="k2">(</span>liveslength <span class="k3">-</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">-</span> livesdigit<span class="k2">)</span><span class="k2">]</span> <span class="k3">-</span> <span class="n">48</span><span class="k2">]</span>, <span class="n">100</span> <span class="k3">-</span> livesdigit <span class="k3">*</span><span class="n">17</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>    <span class="k2">}</span></td></tr></tbody></table></div></div><p>
currently this is what I am using and it works.  Maybe there is something else besides itoa that I can use and keep much this same code?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Sat, 12 May 2007 09:10:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
lease, please, please, follow this advice.<br />And use qualifiers on the snprintf call. For example, if you want to display a score acrade-style, with a maximum of 8 digits, and leading zeroes, you&#39;d do:<br /><span class="source-code"><a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>buf, <span class="s">"%08.8i"</span>, score<span class="k2">)</span><span class="k2">;</span></span>
</p></div></div><p>
You&#39;ve missed a parameter there.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I was for some reason never able to completely understand those. How ever if you have a small example I seem to understand those easier.</p><p>&lt;snip code sample&gt;</p><p>currently this is what I am using and it works. Maybe there is something else besides itoa that I can use and keep much this same code?
</p></div></div><p>

Replace the first two lines with:</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>livestring, <span class="k1">sizeof</span><span class="k2">(</span>livestring<span class="k2">)</span>, <span class="s">"%d"</span>, score <span class="k3">+</span> totalscore<span class="k2">)</span><span class="k2">;</span>
<a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>mousehstring, <span class="k1">sizeof</span><span class="k2">(</span>mousehstring<span class="k2">)</span>, <span class="s">"&amp;d"</span>, mouseh<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

The first parameter of <tt>snprintf()</tt> is the character array (string) you&#39;re writing to, the second parameter is the maximum number of characters to write (though, it will actually copy this ammount minus one characters, since it appends a null terminator). From there after, you write a format specifier, and supply additional variables, as you would to any of the <tt>printf()</tt> variants.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LennyLen)</author>
		<pubDate>Sat, 12 May 2007 19:20:41 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">LennyLen said:</div><div class="quote"><p>
The first parameter of snprintf() is the character array (string) you&#39;re writing to, the second parameter is the maximum number of characters to write (though, it will actually copy this ammount minus one characters, since it appends a null terminator). From there after, you write a format specifier, and supply additional variables, as you would to any of the printf() variants.
</p></div></div><p>
Now that I understand. ^^<br />But actually it would be
</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>livesstring, <span class="k1">sizeof</span><span class="k2">(</span>livesstring<span class="k2">)</span>, <span class="s">"%d"</span>, lives<span class="k2">)</span><span class="k2">;</span>
<a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>mousehstring, <span class="k1">sizeof</span><span class="k2">(</span>mousehstring<span class="k2">)</span>, <span class="s">"%d"</span>, mouseh<span class="k2">)</span><span class="k2">;</span>
<a href="http://www.delorie.com/djgpp/doc/libc/libc_732.html" target="_blank">snprintf</a><span class="k2">(</span>scorestring, <span class="k1">sizeof</span><span class="k2">(</span>scorestring<span class="k2">)</span>, <span class="s">"%d"</span>, score<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

works great and easier to understand.  Thanks. Why is the mouseh given a &amp;d instead of %d in your example and livesstring getting the value from score + totalscore.  Although I like the mistakes.  I think it gave me an error because my int wasn&#39;t given enough space to hold &amp;mouseh.  and when the score and lives went up at the same time that was just a given.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Sat, 12 May 2007 20:08:05 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Why is the mouseh given a &amp;d instead of %d in your example
</p></div></div><p>

Because it was 2am, and I&#39;d been drinking for a couple of hours. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /> They should of course both be %d, as you figured out.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
and livesstring getting the value from score + totalscore.
</p></div></div><p>

Same as above.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I think it gave me an error because my int wasn&#39;t given enough space to hold &amp;mouseh.
</p></div></div><p>

There was no &amp;mouseh in my example. The line I wrote should have just given you a warning about having too many format arguments.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LennyLen)</author>
		<pubDate>Sun, 13 May 2007 03:21:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well anyways it was tons of help.  Thanks.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CIRCLE)</author>
		<pubDate>Sun, 13 May 2007 05:35:22 +0000</pubDate>
	</item>
</rss>
