Programación General > C/C++
pasar de codigos ascii a sus correspondientes caracteres.
black_flowers:
bueno a lo de antes qusiera añadir que sí que puedo sacar los numeros como enteros decimales así:
fscanf (pFileShell, "%d", &iOpCode);
pero en hexadecimal de esta manera:fscanf (pFileShell, "%x", &iOpCode);
tras ejecutarla iOpCode contiene -1957267453
black_flowers:
bueno parece que con esto funciona, con este codigo leo un fichero que contiene codigos ascii en hexadecimal y creo un archivo nuevo con los caracteres alfanumericos correspondientes. Gracias tanatos por tu ayuda ;)
--- Código: C++ --- #include <stdio.h>#include <stdlib.h>#include <string.h> int main(int argc, char **argv){ FILE * pFileShell; FILE * pFileAsci; int iOpCode; pFileShell = fopen (argv[1] , "r"); pFileAsci = fopen (argv[2] , "w+"); if (pFileShell == NULL) perror ("Error opening file"); else { if(pFileAsci == NULL) perror ("Error creating file"); else {rewind (pFileShell); while ( ! feof (pFileShell) ) { fscanf (pFileShell, "%x", &iOpCode); fprintf (pFileAsci,"%c",iOpCode); } fclose (pFileAsci); fclose (pFileShell); } } return 0;}
Navegación
[*] Página Anterior
Ir a la versión completa