/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
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.

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408920
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste