А вот тут Вы глубого заблуждаетесь. Да, мусора изза посылки буфера целиком нет, просто printf выводит данные до ближайшего завершающего нуля, но это не значит, что мусор не гоняется на сервер и обратно. А вот эффект от бездумного использования printf:
Код: Выделить всё
$ ./cli
running
if you want to exit program - enter exit
if your interlocutor is gone - enter exit
%i
>>134519652
qwerty%sQWERTY
>>qwertyexitQWERTY
%s%s
Segmentation fault: 11 (core dumped)