Título: Problema con strings Publicado por: pablovg9 en 19 Julio 2015, 22:13 pm Hola buenas!
Bien, mi problema es que tengo que introducir una medida en un string en inches y convertirla a metros (Ej: 200 i) pero no se como hacer para identificar las partes del string. Necesito quitar los 2 últimos dos valores del string para que quede solo el número y pasarlo a int y también quitar todo menos la letra para así reconocer que la medida en la que me lo dan es inches. Espero que se entienda el problema. Gracias! :D Título: Re: Problema con strings Publicado por: ivancea96 en 19 Julio 2015, 22:20 pm La función
Código convierte una cadena en int. Claro que tiene que terminar en '\0'. Lo más fácil, es que muevas a una variable char la última letra, y borres los últimos 2 caracteres. Como no sé en qué lenguaje lo estás haciendo, te diré: En C, basta que conviertas la penúltima letra (el espacio), en '\0'. Una vez hecho esto, es como si hubieras borrado el resto. luego, simplemente pásale la cadena a atoi(). En C++ con std::string es lo mismo, solo que puedes usar stoi() en vez de atoi(), ya que el primero trabaja con std::string. Borrar los últimos dos caracteres con std:.string es poniendo std::string::erase() en la función (str.srase(str.size()-2,2);) Título: Re: Problema con strings Publicado por: pablovg9 en 19 Julio 2015, 22:26 pm Uso c++
Como hago para mover la letra a un char? Estoy aprendiendo así que si puedes explicármelo muy básico mejor pls xD Gracias Título: Re: Problema con strings Publicado por: ivancea96 en 19 Julio 2015, 22:28 pm Código
Título: Re: Problema con strings Publicado por: pablovg9 en 19 Julio 2015, 22:40 pm Con eso cogería el carácter en 5ª posición que es este caso es la letra, pero el usuario podría introducir un número más grande o más pequeño así que la letra no estaría siempre en la 5ª posición (Ej: 2 i)
Como sería para coger el último carácter del string? Y para coger todos menos los dos últimos? Título: Re: Problema con strings Publicado por: ivancea96 en 19 Julio 2015, 23:21 pm El último caracter es el que está en el índice (tamaño de la string - 1). str.size()-1
Si quieres solo el numero, tienes 2 opciones. O hacer str.erase(str.size()-2,2), para borrar 2 caracteres empezando desde el penúltimo, o hacer Código Empezando desde la posición 0, coge los X caracteres siguientes (str.size()-2), y retorna la cadena equivalente a esa subcadena. Título: Re: Problema con strings Publicado por: pablovg9 en 20 Julio 2015, 00:30 am Muchas gracias, me funcionó!!
|