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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  convertir numero char a int
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: convertir numero char a int  (Leído 8,872 veces)
d00ze13

Desconectado Desconectado

Mensajes: 78


Ver Perfil
convertir numero char a int
« en: 13 Enero 2011, 21:54 pm »

Queria saber como se hace para convertir un numero char a int. os pongo un ejemplo
Código
  1. #include <iostream>
  2. using namespace std;
  3. int main(void){
  4.       char figura[2]={1,4};
  5.  
  6.       if(figura[1]>=1&&figura[1]<=8))  //quiero que me diga si esta entre el numero 1y8
  7.            cout<<"Correcto"<<endl;
  8.       else
  9.           cout<<"Error"<<endl;
  10.  
  11.       return 0;
  12. }


En línea

Nobody12

Desconectado Desconectado

Mensajes: 179



Ver Perfil WWW
Re: convertir numero char a int
« Respuesta #1 en: 13 Enero 2011, 22:13 pm »

Con la función atoi:

Código
  1. char *cadena="453423";
  2. int valor=atoi(cadena);
  3.  
Incluye la biblioteca cstdlib antes.

Un saludo  ;)


En línea

Martxel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: convertir numero char a int
« Respuesta #2 en: 13 Enero 2011, 22:16 pm »

Buenas tardes,

¿Has probado con la función atoi()?

Quizá algo así:

Código:
if(atoi(figura[1]) >= 1 && atoi(figura[1]) <= 8)
cout << "Correcto" <<endl;

Tendrás que incluir la librería correspondiente.

Un saludo.

EDIT: Se me han adelantado. Siento la repetición.
En línea

d00ze13

Desconectado Desconectado

Mensajes: 78


Ver Perfil
Re: convertir numero char a int
« Respuesta #3 en: 13 Enero 2011, 22:22 pm »

la funcion de atoi ya la sabia, la forma de valenciano013 no me sirve ya que yo solo quiero acceder a la posicion 2 de la cadena.
tengo este caso pero es que no me va
Código
  1. (atoi(figura[1])>=1&&atoi(figura[1])<=8)
En línea

Martxel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: convertir numero char a int
« Respuesta #4 en: 13 Enero 2011, 22:51 pm »

Bien, he hecho unas pruebas y aquí tienes el código correcto, comprobado que compila con g++ y funciona bien:

Código:
#include <iostream>
#include <stdlib.h>
using namespace std;
int main(void) {
        char figura[2]={'1','4'};
        if(atoi(figura + 1) >=1 && atoi(figura + 1) <=8)
                cout << "Correcto" << endl;
        else
                cout << "Error" << endl;
        return 0;
}

Un saludo.
En línea

d00ze13

Desconectado Desconectado

Mensajes: 78


Ver Perfil
Re: convertir numero char a int
« Respuesta #5 en: 13 Enero 2011, 23:02 pm »

ahora si que funciona mil gracias Martxel, una duda, porque pusiste (figura + 1) para acceder a la direccion de memoria donde esta almacenado figura[1] ?
En línea

Martxel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: convertir numero char a int
« Respuesta #6 en: 13 Enero 2011, 23:09 pm »

"figura" contiene la dirección de figura[0] y "figura + 1" sería la siguiente dirección, esto es, la de figura[1].

Un saludo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
convertir char a wchar_t
Programación C/C++
Riki_89D 3 4,308 Último mensaje 1 Junio 2010, 09:27 am
por Eternal Idol
Convertir char ** en double
Programación C/C++
karmele85 5 2,819 Último mensaje 6 Julio 2010, 20:35 pm
por karmele85
Convertir char[] a char *[] ?
Programación C/C++
Sanlegas 2 3,951 Último mensaje 11 Julio 2010, 01:01 am
por leogtz
¿como convertir de int a char en C++?
Programación C/C++
ApOkAlizE 2 18,554 Último mensaje 29 Noviembre 2011, 00:56 am
por rir3760
convertir un char a tchar, wchar etc.
Programación C/C++
YagamiIori2002 6 3,404 Último mensaje 26 Abril 2012, 19:06 pm
por YagamiIori2002
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines