linux-l: snprintf/vsnprintf

Steffen Solyga solyga at absinth.net
Fr Apr 28 17:14:28 CEST 2000


Dear Michael Wiedmann, concerning your mail sent on Thursday, 2000/04/27 22:58
let me reply the following:

> Wird wohl nichts anderes übrig bleiben :(  Ich gehe aber davon aus, dass
> entsprechende Module unter GPL irgendwo im Netz rumschwirren. Hat jemand
> URLs parat?

Bleibt nichts anderes. Soweit ich das bei diversen Programmen mitgekriegt
habe, ist es durchaus üblich, für den Notfall ein eigenes snprintf mitzu-
bringen.
glibc gibt's doch als Source in jeder vernünftigen Distribution...

> Fuer snprintf bietet sich ja als schneller Workaround immerhin ein
> konditionales sprintf an.

Weil ich bisher zu faul war, mir den Quelltext von snprintf() zu besorgen
und anzugucken und auch keinen extremen Gebrauch von der Funktion gemacht
habe, mache ich immer
len= strlen(s0) + strlen(s1) +.....
str=malloc(len+1);
if( sprintf(str, "%s%s...", s0, s1, ...) =! len ) exit
Das sieht zwar super blöde aus, hat aber den Vorteil, daß der string
praktisch nie abgeschnitten wird, wie es mit snprintf der Fall ist.

Wenn Du den snprintf-Quelltext erfolgreich eingebunden haben solltest,
sag doch mal Bescheid, ob es Probleme gab (z.B. mit headern oder
anderen benötigten Funktionen).

Gruß, Steffen.

-- 
--------------------------------------------
Steffen Solyga
mail: solyga at absinth.net
www : http://www-tet.ee.TU-Berlin.DE/solyga/
--------------------------------------------



Mehr Informationen über die Mailingliste linux-l