Hola a todos, bueno, mi problema es este:
tengo un ciclo for de 0 a 34, y quiero insertar dicho numero en un objeto tipo string, delante de la linea "Linea no."... dentro de un "vector" de dichos objetos...
Algo asi:
vector <string> lineas;// Ya tengo mi vector de strings for (int i = 0; i < 34; i++) { // Mi ciclo de 0 - 14 lineas.push_back( "Linea no." ); // Es necesario añadir un nuevo objeto string al vector // ??? Como hago para agregar el numero de indice al final de la linea de cada objeto de mi vector??? }
Como ven es un problema muy sencillo, pero no encuentro la forma de solucionarlo...
Espero que me puedan ayudar, gracias!!!
Buenas
El "problema" lo tienes al concatenar el entero con el string, que no sabía que no se podía hacer con el operador +. Aquí lo tienes, además de mostrar cada elemento tras añadirlo.
¡Visca el Barça y Viva España!
Si ya usas sprintf, para que usar el +?
Ambos códigos son equivalentes. Yo simplemente he eliminado el string base y la operación de suma que no hace falta.
Saludos.
Dennis Ritchie. Padre de C y cocreador de UNIX.
R.I.P.
Buenas
Sé que son equivalentes, quería recalcar cuando se puede usar el operador + y cuando no, pero bueno, así es más resumido.
Salu2.
Gracias, sus respuestas son
Gracias, sus respuestas son buenas, y si, ya habia pensado en usar el sprintf, pero el problema es que no se sabe cuanto medira la cadena con datos en formato (en el ejemplo me sirve 21, pero pueden ser 3, 4 o 99999... no se sabe... y no puedo desperdiciar RAM tampoco... Tambien use otro metodo:
El problema con este es que siempre guarda uno menos que lo que debe... (si mi ciclo es de 0 - 34, solo guarda numeros del 0 - 32, si es de 0 - 35, guarda 0 - 33, etc...) Incluso volcando el buffer explicitamente con flush()...
arieldev.blogspot.mx