Capito inserisce i numeri di caratteri che hai specificato come precisione!!! Quindi questo può essere un buon modo per evitare buffer overflow???

Comunque io questo comportamento lo facevo con la snprintf. La differenza tra le due funzioni e che sprintf non inserisce il carattere di fine stringa, mentre snprintf inserisce il carattere di fine stringa, giusto?