Programación General > C/C++
escrivir valores en un archivo
m0skit0:
Es que no entendí qué quisiste decir con "escrivir"
Eternal Idol:
--- Cita de: "m0skit0" ---Es que no entendí qué quisiste decir con "escrivir"
--- Fin de la cita ---
:lol: :devil: Es que era fbrite :clown:
Alfonsos1:
ahora probe con mas de 1 caracter y no me funciona:
int var[1024];
var[0]=102;//El codigo ANSI de "f" es 102
var[1]=102;
FILE *fs=fopen("asd.txt", "wb");
fwrite(var, 1, 2, fs);
Lo que yo quiero que haga este codigo es que escriba en asd.txt "ff", pero cuando lo ejecuto lo que hace es escribir "f ",
el primer caracter esta bien, pero el segundo en lugar de escrivir una "f" escrive un espacio.
Geo:
Revisa la sintaxis de la función fwrite:
--- Código: C ---fwrite( puntero_array, tamaño_en_bytes_de_cada_elemento, numero_de_elementos, puntero_FILE ); Una variable tipo int no ocupa un solo byte en memoria, su tamaño depende de la plataforma en que trabajes, si es un sistema de 32 bits probablemente ocupe 4 bytes. En fin, que para escribir ff en tu archivo debes cambiar:
--- Código: C ---fwrite(var, 1, 2, fs); por
--- Código: C ---fwrite( var, 4, 2, fs ); O mejor aún, si no sabes cuántos bytes ocupa un tipo int usa sizeof:
--- Código: C ---fwrite( var, sizeof( int ), 2, fs );
m0skit0:
Lo que pasa es que así no te va a escribir ff, sino [][][]f[][][]f. Tienes que usar char.
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa