Con la printf scrivi una stringa terminata da zero binario. Ma in un file binario (come un exe) i dati non sono organizzati in stringhe terminate da zero, anzi, qualsiasi carattere, compreso gli zeri binari, fanno parte del file ...