• Inicio
  • Buscar
  • Ingresar
  • Registrarse

    ¿Sabes el motivo de que fallen tanto algunas impresoras Epson?

    • Hack x Crack - Comunidad de Seguridad informática »
    • Programación »
    • C / C++ »
    • Manejo De error
    • Imprimir
    Páginas: [1]   Ir Abajo

    Autor Tema: Manejo De error  (Leído 2611 veces)

    Desconectado Villano

    • { L2 } Nativo Digital
    • **
    • Mensajes: 126
      • Ver Perfil
    Manejo De error
    « en: Marzo 13, 2012, 01:17:03 am »
    Que devuelve un programa si  a un int le pongo por ejemplo una A;
    ...
    int x;
    cin>>x;// si aca ala x le pongo una 'a' empiesa a largar cualquier cosa cuando sale el cout
    cout<<x;
    ...
    que devuelve el programa?;
    como lo manejo?;
    En línea

    Desconectado piou

    • { L7 } Juanker
    • *******
    • Mensajes: 1407
      • Ver Perfil
      • White-hat Hacking
    Re:Manejo De error
    « Respuesta #1 en: Marzo 13, 2012, 08:11:58 am »
    De primeras pensaría que le está metiendo el valor ascii de la letra a. No lo tengo muy claro, tendré que probarlo un poco y te comento.
    En línea
    Visita mi blog

    Sígueme en Twitter @piou_hxc

    Desconectado JAG

    • { L7 } Juanker
    • *******
    • Mensajes: 1561
      • Ver Perfil
    Re:Manejo De error
    « Respuesta #2 en: Marzo 13, 2012, 09:45:10 am »
    Pues yo lo he probado con un programa hecho de ejemplo y me ha devuelto el mismo valor que tenía la variable int antes de meterle la letra...
    Yo creo que simplemente no la coge... Para el manejo de errores puedes añadir detrás del cin un if que compruebe si verdaderamente es un número lo que se ha insertado...
    Prueba algo así:
    Código: [Seleccionar]
    char *num;
    printf("Ingresa un numero");
    gets(num);
    while(*num){
       if (isdigit(*num)){
          printf("%c",*num);
       }else{
          printf("ERROR");
       }
    }
    « Última modificación: Marzo 13, 2012, 11:56:31 pm por jag6613 »
    En línea

    Desconectado Villano

    • { L2 } Nativo Digital
    • **
    • Mensajes: 126
      • Ver Perfil
    Re:Manejo De error
    « Respuesta #3 en: Marzo 14, 2012, 03:25:37 am »
    Bien voy a ser mas claro.Pasa que ise un codigo muy basico para saber el numero asccii.
    Código: [Seleccionar]
    while(1)// bucle infinito
    {
    n=getchar();//aca se frena el bucle
    putchar(n);//se escribe el caracter que puse
    cout<<"------";
    cout<<"\t"<<n<<"\n";// se escribe como numero
    }
    .Pero despues seme ocurrio que si podia convertir un caracter asccii a numero puedo convertir un numero a asccii. asi
    En línea

    Desconectado Villano

    • { L2 } Nativo Digital
    • **
    • Mensajes: 126
      • Ver Perfil
    Re:Manejo De error
    « Respuesta #4 en: Marzo 14, 2012, 03:30:29 am »
    que ise esta parte del codigo.que es la que genera el problema
    Código: [Seleccionar]
    int n;
    while(1)//bucle infinito
    {
    cin>>n;//recibo el numero
    cout<<n<<"---";//imprimo n como numero
    putchar(n);//imprimo n como caracter asccii
    cout<<"\n";
    }
    En línea

    Desconectado piou

    • { L7 } Juanker
    • *******
    • Mensajes: 1407
      • Ver Perfil
      • White-hat Hacking
    Re:Manejo De error
    « Respuesta #5 en: Marzo 14, 2012, 06:10:23 pm »
    Para pasar el número a ascii, tendrás que hacer:

    Código: [Seleccionar]
    char a = (char)numero;
    En línea
    Visita mi blog

    Sígueme en Twitter @piou_hxc

    • Imprimir
    Páginas: [1]   Ir Arriba
    • Hack x Crack - Comunidad de Seguridad informática »
    • Programación »
    • C / C++ »
    • Manejo De error
     

    • SMF | SMF © 2013, Simple Machines
    • XHTML
    • RSS
    • WAP2
    Va un mudo y le dice a un sordo: Hack x Crack usa cookies. Pues eso... Learn more