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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Convertir matriz Char a Int con atoi
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Convertir matriz Char a Int con atoi  (Leído 5,983 veces)
jfap45

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Convertir matriz Char a Int con atoi
« en: 8 Agosto 2012, 20:02 pm »

Disculpen, quiero convertir el contenido de una matriz q leo como char y luego copiarla a otra matriz pero como entero (usando atoi), ya lo intente pero supongo q algo tengo mal:

Ejemplo: tengo la siguiente mariz

123 45
12 67
44 89
123 678

estan los numeros separados ppor espacios pero cuando lo hago no me lee bien, aki el codigo

Código:
[code]char* M[filas][columnas];
for (i=0; i<filas;i++)
            for (j=0;j<columnas;j++)
            Mat[i][j]= atoi(M[i][j]);

[/code]
y no hace lo q quiero sino q imprime por ejemplo:
1  23
4  5
12  6
7  4
89

y ni termina de imprimirlos, espero me puedan ayudar xfavor


En línea

X3R4CK3R

Desconectado Desconectado

Mensajes: 74


Divide y vencerás


Ver Perfil WWW
Re: Convertir matriz Char a Int con atoi
« Respuesta #1 en: 8 Agosto 2012, 21:10 pm »

No acostumbro a usar atoi, pero puedo recomendarte que pruebes a usar:

C -> http://www.cplusplus.com/reference/clibrary/cstdio/sprintf/
C++ -> http://www.cplusplus.com/reference/iostream/stringstream/

Si tienes problemas o no sabes como usarlas hazlo saber y te pongo unos ejemplos cuando pueda. ;)

Saludos


En línea

jfap45

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Convertir matriz Char a Int con atoi
« Respuesta #2 en: 8 Agosto 2012, 21:29 pm »

Gracias, estudiare lo que me mandas!

Cabe decir que si en la matriz posicion 0,0 tengo '147' al convertirlo a entero quiero ese mismo valor, no su ekivalente en ASCII!

Si tienes algunos ejemplos, pasamelos xfavor!!

Gracias y saludos!!
En línea

X3R4CK3R

Desconectado Desconectado

Mensajes: 74


Divide y vencerás


Ver Perfil WWW
Re: Convertir matriz Char a Int con atoi
« Respuesta #3 en: 8 Agosto 2012, 21:49 pm »

Al pensar en los ejemplos me he dado cuenta de que las funciones que te propuse sirven para pasar enteros a cadena de texto, no al contrario, así que retiro lo anterior. :-X

Por otra parte, creo que te sería más fácil hacer un array de string ( string[] ) donde almacenes cada línea de enteros, a no ser que el programa tenga que ser en C y no C++... Tampoco sé exactamente lo que quieres, podrías explicar el fin de tu programa y quizás así pueda ayudarte más.

Cabe decir que si en la matriz posicion 0,0 tengo '147' al convertirlo a entero quiero ese mismo valor, no su ekivalente en ASCII!

Obviamente, de lo contrario bastaría con (int)147 :xD Pero... en M[0][0] no puede haber un "147". :silbar:

Saludos
« Última modificación: 8 Agosto 2012, 21:57 pm por XeRaCKeR » En línea

durasno


Desconectado Desconectado

Mensajes: 373


Ver Perfil
Re: Convertir matriz Char a Int con atoi
« Respuesta #4 en: 8 Agosto 2012, 23:11 pm »

Hola! la funcion atoi convierte la parte inicial de una cadena siempre y cuando sea un numero. Si vos tenes la cadena: "123 45" atoi solo va a convertir la subcadena "123" a int, ya que despues del '3' hay un espacio(no es un numero por lo tanto deja de convertir). Fijate como haces para convertir el "45" tambien(tal vez strtok te sirva como ayuda)


Aclaracion:
Código
  1. char* M[filas][columnas];
esto es una matriz de punteros a char, es decir cada posicion de la matriz es un puntero
Código
  1. char M[filas][columnas];
esto es una matriz char, es decir cada posicion de la matriz es un char

Aclare esto porque hay una diferencia importante, y como subiste muy poco codigo nose si realmente queres usar una matriz de punteros.


Saludos
En línea

Ahorrate una pregunta, lee el man
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Convertir matriz Char a Int con atoi
« Respuesta #5 en: 9 Agosto 2012, 02:46 am »

para hacer una conversion de string a numero tienes las funciones

http://www.cplusplus.com/reference/clibrary/cstdlib/strtol/
http://www.cplusplus.com/reference/clibrary/cstdlib/strtod/
http://www.cplusplus.com/reference/clibrary/cstdlib/strtoul/

etc...

Dulces Lunas!¡.
En línea

The Dark Shadow is my passion.
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,866 Último mensaje 1 Junio 2010, 09:27 am
por Eternal Idol
Convertir char[] a char *[] ?
Programación C/C++
Sanlegas 2 4,692 Último mensaje 11 Julio 2010, 01:01 am
por leogtz
duda doble puntero char a matriz de char
Programación C/C++
neo_from_cs_matrix 3 6,035 Último mensaje 5 Septiembre 2011, 03:53 am
por rir3760
Lectura de matríz de char como char** o DWORD*
Programación C/C++
david_BS 3 3,257 Último mensaje 20 Febrero 2012, 20:49 pm
por Eternal Idol
Problema con matriz char
Programación C/C++
novatus84 2 1,787 Último mensaje 14 Diciembre 2014, 23:11 pm
por novatus84
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines