Duda con funciones en C.

Iniciado por Danirs, 23 Octubre 2012, 21:11 PM

0 Miembros y 1 Visitante están viendo este tema.

Danirs

Buenas!

Por mas que busco no encuentro el nombre de la funcion que cambia de letras a valores ASCII (A = 65 por ejemplo), alguien me podria hechar una mano?


Gracias!  ;D   
Qué es la vida un frenesí. Qué es la vida una ilusión, una sombra, una ficción. Que todo en la vida es sueño y los sueños, sueños son.

satu

Hola!!

No hace falta ninguna función, puedes hacer un casting:


int main() {
    char c;
    int i;
    c = getchar();
    i = (int)c;

    printf("Valor numérico de %c es %i", c, i);
    return 0;


Saludos
Breakbeat como forma de vida

Caster


avesudra

Es que no es necesaria una función para lo que pides.Para eso normalmente se imprime el carácter directamente como entero.
Ejemplo:
#include <stdio.h>

int main ( int argc, char**argv)
{
  char letra = 'A'; //Letra A mayúscula que es 65 en decimal.
  printf("La letra imprimida como caracter es: %c\n",letra);//Aquí el especificador de formato es %c de carácter.
  printf("La letra imprimida como su valor ASCII en sistema decimal es: %d", letra); //Aquí el especificador de formato es %d de decimal.
  return 0;
}

PD: Ni siquiera hace falta un casting (conversión) como dice Satu , podrías asignar el valor de un carácter a un entero sin problema alguno de esta manera:
char letra = 'A';
int letraValor = letra; //No es necesario un casting ya que un char es un entero de 1 byte.
Regístrate en

do-while

¡Buenas!

No te hace falta ninguna funcion. Un char es un valor entero entre -128 y 127, y un unsigned char un valor entre 0 y 255.

Si tienes la letra 'A' puedes asignarsela a un entero tal cual, sin ningun problema o si quieres saber el ascii lo imprimes con %d en lugar de %c. En C++ para imprimir el valor numero tendras que hacer cast a char o unsigned char.

¡Saludos!

P.D: Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.
- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!

Danirs

Muchas gracias por responder pero aunque se pueda hacer sin funcion queria saber de su existecia y me ha quedado claro con la funcion toascii se puede de todas maneras gracias
Qué es la vida un frenesí. Qué es la vida una ilusión, una sombra, una ficción. Que todo en la vida es sueño y los sueños, sueños son.

rir3760

Solo agregar que la función "toascii" no es parte de la biblioteca estándar de C.

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language