elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [C] Convertir caracter a decimal
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [C] Convertir caracter a decimal  (Leído 4,932 veces)
m0rf


Desconectado Desconectado

Mensajes: 828


BACK!


Ver Perfil
[C] Convertir caracter a decimal
« en: 7 Febrero 2012, 17:10 pm »

Bueno pues les explico.

Tengo este codigo:

Código
  1. #include<stdio.h>
  2.  
  3. main()
  4.  
  5. {
  6.  
  7. FILE *archiu;
  8. char caracter;
  9.  
  10. int count=0;
  11. char nomarch [80];
  12.  
  13.  
  14. scanf("%s",nomarch );
  15.  
  16. archiu = fopen (nomarch,"r");
  17.  
  18. while (feof(archiu)==0&&count<3)  
  19. {
  20.  
  21.      caracter = fgetc (archiu);
  22.      printf("%c  %ld  %ld\n",caracter,caracter,count)
  23.      count++;
  24. }      
  25.  
  26. }
  27.  

El problema es que me da de resultado:
-1  byte 1
-2  byte 2
77  byte 3

11111111
11111110-
01001101-77
--------------------------------------------------------------------------------
Escribiendo el post he encontrado el fallo.

Bueno nada lo posteo por si a alguien le sirve.

El fallo es que el char solo reconoce de 0 a 127. Para que funcione se le tiene que declarar con unsigned para que llegue a 255.




En línea

Si todos fuéramos igual de inteligentes no existiría la mediocridad porque no podríamos apreciarla. Aprecias la mediocridad?
naderST


Desconectado Desconectado

Mensajes: 625



Ver Perfil WWW
Re: [C] Convertir caracter a decimal
« Respuesta #1 en: 7 Febrero 2012, 17:25 pm »

Puedes usar atol()

Código
  1. decimal = atol(&caracter);
  2.  


En línea

m0rf


Desconectado Desconectado

Mensajes: 828


BACK!


Ver Perfil
Re: [C] Convertir caracter a decimal
« Respuesta #2 en: 7 Febrero 2012, 18:03 pm »

Puedes usar atol()

Código
  1. decimal = atol(&caracter);
  2.  
Gracias por el dato.
En línea

Si todos fuéramos igual de inteligentes no existiría la mediocridad porque no podríamos apreciarla. Aprecias la mediocridad?
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Convertir caracter a ASCII
Programación Visual Basic
X-TN 6 18,800 Último mensaje 10 Junio 2006, 19:16 pm
por soplo
convertir de decimal a hexadecimal
Programación C/C++
chaarlyyyy 5 42,700 Último mensaje 29 Mayo 2010, 17:10 pm
por danyof
Convertir de IEEE754 de precisión simple a valor decimal.
Programación Visual Basic
Impersecuto 6 12,803 Último mensaje 18 Noviembre 2010, 20:28 pm
por Karcrack
Funcion o programa para convertir de decimal a binario,hexadecimal y octal...
Programación C/C++
dnsdirm 2 10,046 Último mensaje 24 Mayo 2011, 06:23 am
por dnsdirm
Convertir decimal a diferentes bases
Programación C/C++
AxelP 3 4,946 Último mensaje 9 Marzo 2015, 16:32 pm
por rir3760
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines