Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: evicar en 17 Junio 2012, 01:28 am



Título: Ayuda extraer int de un string C++
Publicado por: evicar en 17 Junio 2012, 01:28 am
hola a todos tengo un pequeño problemita para la "U" ojala puedan ayudarme;

necesito pasar a variables la siguiente cadena separada por "+" y "/" ej:

25+3/23+6

visitae1=25
locale1=3
visitae2=23
locale2=6

en internet estuve buscando algo que me sirvió pero no lo suficiente ya que no pude pasar a variables los datos, solo pude separarlos.

Código:
/* strtok example */
#include <stdio.h>
#include <string.h>

int main ()
{
  char str[] ="25+5/13+6";
  char  * pch;
  pch = strtok (str," +/");
 int visitae1;
 int locale1;
 int visitae2;
 int locale2;
  while (pch != NULL)
  {
    printf ("%s\n",pch);
   
 
    pch = strtok (NULL, " +/");
   
   
  }
  system("pause");
 
  return 0;
}



Título: Re: Ayuda extraer int de un string C++
Publicado por: durasno en 17 Junio 2012, 05:16 am
Hola! busca la funcion atoi


Saludos


Título: Re: Ayuda extraer int de un string C++
Publicado por: STANHMAL en 17 Junio 2012, 05:45 am
para C++ yo utilizo la siguiente función porque siempre me dio problemas el atoi :

Código
  1. int stringToInt(string val){
  2.    istringstream sstr(val);
  3.    int ival;
  4.    sstr>>ival;
  5.    return ival;
  6. }
  7.  

PD: tu código es C no C++

$4!u2


Título: Re: Ayuda extraer int de un string C++
Publicado por: evicar en 17 Junio 2012, 06:33 am
Hola! busca la funcion atoi


Saludos
para C++ yo utilizo la siguiente función porque siempre me dio problemas el atoi :

Código
  1. int stringToInt(string val){
  2.    istringstream sstr(val);
  3.    int ival;
  4.    sstr>>ival;
  5.    return ival;
  6. }
  7.  

PD: tu código es C no C++

$4!u2
eso serviría pero solo para los primeros numeros, pero yo tambien necesito asignarle una variable a los demas,,,o es muy tonto lo que estoy diciendo? :rolleyes:


Título: Re: Ayuda extraer int de un string C++
Publicado por: STANHMAL en 17 Junio 2012, 06:37 am
eso serviría pero solo para los primeros numeros, pero yo tambien necesito asignarle una variable a los demas

disculpa pero no entiendo a que te refieres.


Título: Re: Ayuda extraer int de un string C++
Publicado por: evicar en 17 Junio 2012, 06:44 am
disculpa pero no entiendo a que te refieres.
lo voy a poner mas simple; el usuario va a ingresar la hora actual de esta forma "13:42:21" donde 13 seran las horas 42 seran los minutos y 21 seran los segundos, lo que yo necesito hacer es asignarle una variable a las horas otra a los minutos y otra a los segundos...
no se si quedo mas claro ahi...


Título: Re: Ayuda extraer int de un string C++
Publicado por: STANHMAL en 17 Junio 2012, 06:49 am
lo que tienes que hacer es separar los números en otro string, es decir, si tienes "13:42:21" mandarle a un string diferente "13" y luego llamar a la función, después le mandas el "42" lo conviertes y por ultimo mandas al "21".


Título: Re: Ayuda extraer int de un string C++
Publicado por: The Swash en 18 Junio 2012, 03:07 am
Hola,

Creo que deberías hacer una función para tipo "Split" para buscar datos en base a delimitadores. "strtok" ayudaba en eso pero deberás recorrer todos los posibles "delimitadores".

Un saludo,
Iván Portilla.