|
| sprintf %03.1f !?!? Fra : Lasse Madsen |
Dato : 17-01-04 22:04 |
|
Hej
Jeg sidder og roder lidt med en sprintf jeg ikke kan få til at virke :(
jeg vil gerne skrive 000.0% ud i en buffer. således
float vaerdi;
vaerdi = 0.0;
sprintf(display_buffer,"vaerdi = %03.1f%c",vaerdi,'%');
men det giver: vaerdi = 0.0% og ikke 000.0%
hvad gør jeg galt ?
m.v.h.
lasse madsen
| |
Jesper Skriver (17-01-2004)
| Kommentar Fra : Jesper Skriver |
Dato : 17-01-04 22:11 |
|
On Sat, 17 Jan 2004 22:03:37 +0100, Lasse Madsen wrote:
> Hej
>
> Jeg sidder og roder lidt med en sprintf jeg ikke kan få til at virke :(
>
> jeg vil gerne skrive 000.0% ud i en buffer. således
>
> float vaerdi;
> vaerdi = 0.0;
>
> sprintf(display_buffer,"vaerdi = %03.1f%c",vaerdi,'%');
3 betyder 3 characters, saa du skal bruge %05.1f for at faa det
oenskede.
> men det giver: vaerdi = 0.0% og ikke 000.0%
>
> hvad gør jeg galt ?
>
> m.v.h.
> lasse madsen
>
>
>
--
Jesper Skriver, CCIE #5456, FreeBSD committer
| |
Lasse Madsen (17-01-2004)
| Kommentar Fra : Lasse Madsen |
Dato : 17-01-04 22:16 |
|
Hej Jesper
Tusinde tak, det virker perfekt.
jeg var ikke klar over at man mente antal af karaktere med punktum og det
efter ... men så blev jeg så meget klogere
M.v.h.
Lasse madsen
"Jesper Skriver" <harvest@wheel.dk> skrev i en meddelelse
news:slrnc0j96s.1ek1.harvest@freesbee.wheel.dk...
> On Sat, 17 Jan 2004 22:03:37 +0100, Lasse Madsen wrote:
> > Hej
> >
> > Jeg sidder og roder lidt med en sprintf jeg ikke kan få til at virke :(
> >
> > jeg vil gerne skrive 000.0% ud i en buffer. således
> >
> > float vaerdi;
> > vaerdi = 0.0;
> >
> > sprintf(display_buffer,"vaerdi = %03.1f%c",vaerdi,'%');
>
> 3 betyder 3 characters, saa du skal bruge %05.1f for at faa det
> oenskede.
>
> > men det giver: vaerdi = 0.0% og ikke 000.0%
> >
> > hvad gør jeg galt ?
> >
> > m.v.h.
> > lasse madsen
> >
> >
> >
>
>
> --
> Jesper Skriver, CCIE #5456, FreeBSD committer
| |
Byrial Jensen (18-01-2004)
| Kommentar Fra : Byrial Jensen |
Dato : 18-01-04 08:48 |
|
Lasse Madsen wrote:
> jeg var ikke klar over at man mente antal af karaktere med punktum og det
> efter ... men så blev jeg så meget klogere
Ikke "med punktum", men "med decimaladskiller". Hvilken decimaladskiller
(punktum eller komma) der bruges, afhænger af det valgte lokale.
| |
Kim Hansen (18-01-2004)
| Kommentar Fra : Kim Hansen |
Dato : 18-01-04 05:36 |
|
"Lasse Madsen" <Lasse.madsen@elektronik.dk> writes:
> sprintf(display_buffer,"vaerdi = %03.1f%c",vaerdi,'%');
Nu har du fået løst dit problem, men jeg vil lige kommentere din måde
at lave %, det kan vidst gøres nemmere med:
sprintf(display_buffer,"vaerdi = %05.1f%%",vaerdi);
--
Kim Hansen | |\ _,,,---,,_ | Det er ikke
Dalslandsgade 8, A708 | /,`.-´` -. ;:-. | Jeopardy.
2300 København S | |,4- ) )-,_. ,\ ( `'-' | Svar _efter_
Tlf: 32 88 60 86 | '---''(_/--' `-'\_) | spørgsmålet.
| |
|
|