/ 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
printf med stor temp buffer
Fra : Troels


Dato : 20-05-05 18:52


Printf implementeringen i IARs clib (som måske stammer fra dikumware) bruger
en temporær buffer på 134 bytes, + diverse flag = ialt 178 bytes på stacken.

På små embeddede platforme gør dette rimeligt ondt. Er der nogen der har
nærlæst printf så tæt, at de kan overskue om det er absolut nødvendigt med
så stor en buffer ?

Det skal siges at den findes i 3 versioner.
1 Full der er helt ansi compliant
2 No float, kan alt, bare ikke floats
3 Minimal, understøtter heller ikke field width som %.3d eller modifiers som
%ld

Først når man går ned i 3'eren bliver 134 byte bufferen ikke kompileret med.

I nogle situationer ville jeg være meget gladere for en sprintf_slow
version, som måske skulle løbe parametrene og formatstrengen igennem flere
gange, for at smage lidt på den, og så til sidst at lave konverteringen uden
en temp buffer.

Er det ikke bare fordi de ikke gad lave det / betale nogen for det, at det
ser sådan ud ?

tpt



 
 
Rasmus Neckelmann (21-05-2005)
Kommentar
Fra : Rasmus Neckelmann


Dato : 21-05-05 13:15

Troels skrev:
> Printf implementeringen i IARs clib (som måske stammer
> fra dikumware) bruger en temporær buffer på 134 bytes, +
> diverse flag = ialt 178 bytes på stacken.
>
> På små embeddede platforme gør dette rimeligt ondt. Er
> der nogen der har nærlæst printf så tæt, at de kan
> overskue om det er absolut nødvendigt med så stor en
> buffer ?

Synes hellere du skal spørge dig selv om du virkelig har brug for en printf?
:) Jeg plejer bare at nøjes med det absolut minimale hvis jeg ved ram'en er
begrænset så meget. Og IARs clib er da også ret bloatet generelt.

--
mvh Rasmus Neckelmann



Ukendt (22-05-2005)
Kommentar
Fra : Ukendt


Dato : 22-05-05 22:46


>
> Synes hellere du skal spørge dig selv om du virkelig har brug for en
> printf?
>

Hvis det er med den på, så har man jo aldrig brug for printf.

tpt




Søg
Reklame
Statistik
Spørgsmål : 177438
Tips : 31962
Nyheder : 719565
Indlæg : 6408040
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste