[C con Clase] Problema al escribir en un archivo valores int superiores a 9

Programante programante en gmail.com
Sab Nov 24 16:43:12 CET 2007


Akio escribió:
> Bueno, a base de hacer pruebas me he fijado que el tema viene a que sprintf me passa los ints a caràcter, de forma que cuando me meustra bien del 0 al 9, en realidad esta usando los numeros del 48 al 57 (ascii).
>
> Entonces ahora necesitaria una forma de escribir en el fichero los numeros mayores a 9, para que en lugar de aparecerme : ; < = > me aparezca 10 11 12 13 14
La familia de funciones printf trata perfectamente los números mayores. 
El problema es que tú les estás pidiendo que te imprima un caracter (%c) 
con ese código ascii, en lugar de un número (%d).

Cambia sprintf(hola,"%1c",i); y sprintf(hola,"%5c",i); por 
sprintf(hola,"%d",i); y sprintf(hola,"%5d",i);




Más información sobre la lista de distribución Cconclase