Título: duda c++ Publicado por: ankora45 en 10 Octubre 2012, 20:43 pm no se como hacer para que si un int te retorne char te devuelva un error en vez de un buffer overflow
esto es lo que tengo ya se que os puede parecer una aberracion pero no se me ocurre otra cosa Código
Título: Re: duda c++ Publicado por: x64core en 10 Octubre 2012, 21:50 pm no se como hacer para que si un int te retorne char te devuelva un error en vez de un buffer overflow esto es lo que tengo ya se que os puede parecer una aberracion pero no se me ocurre otra cosa Código
estas guardando la entrada en un int y luego ese int lo queres convertir en char? porque no haces un casting? char a = (char)num; el compilador segurmante te lanzara un warning de perdida de datos y es normal , pero si estas seguro que solo ingresara un byte, noseria mejor pasar directamente el char? pero si es un numero de mas de 2 cifras entonces tendras que convertir el numero y copiarlo en un buffer, osea convertir cada cifra del numero a un char en C++. Título: Re: duda c++ Publicado por: rir3760 en 11 Octubre 2012, 03:15 am no se como hacer para que si un int te retorne char te devuelva un error en vez de un buffer overflow Tienes que explicarte de una forma clara y precisa porque, honestamente, es difícil entender el problema.Supongo la pregunta es: Si en un programa espero obtener un entero y en su lugar el usuario teclea una cadena no valida como "JKL", ¿Como puede detectarlo y continuar con la ejecución del programa? Si es eso puedes primero leer una linea mediante la función "getline" y a continuación verificar si de esta se puede obtener el numero mediante un objeto de la clase "stringstream". Un ejemplo: Código
Editado: la explicacion estaba mal (muy mal). La cambie por una, espero, mejor. Un saludo Título: Re: duda c++ Publicado por: rir3760 en 11 Octubre 2012, 16:27 pm Mensaje duplicado (Fue un "error de dedazo").
|