Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: sombrakepsilon en 2 Diciembre 2015, 20:36 pm



Título: Manejo de cadenas en C++ [Programación básica]
Publicado por: sombrakepsilon en 2 Diciembre 2015, 20:36 pm
Hola, perdonen las molestias pero llevo ya unos días con una duda que no me permite realizar un ejercicio de programación, a continuación les pondré el código y seguidamente mi duda a ver si pudieran por favor resolverla.

Código
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. void funcionSeparadora (string linea)
  6. {
  7. int numParametros= 1;
  8. string parametro;
  9. for (int i= 0; i<linea.length(); i++) {
  10. parametro[i] = linea[i];
  11. if (linea[i] == ',') {
  12. cout << "Parametro " << numParametros << ":" << "[" << parametro << "]" << endl;
  13. numParametros++; }
  14. else {parametro+linea[i];}
  15. }
  16. cout << "Parametro " << numParametros << ":" << "[" <<  parametro << "]" << endl;
  17. }
  18.  
  19. int main (void) {
  20. int contador= 1;
  21. string comando;
  22. while (cin >> comando) {
  23. string parametros;
  24. cout << contador << ". Comando: " << "[" << comando << "]"  << endl;
  25. char c;
  26. c = cin.get();
  27. if (c == '\n')
  28. {
  29. }
  30. else
  31. {
  32. getline(cin, parametros);
  33. cout << "Parametros: " << "[" << parametros << "]" << endl;
  34. funcionSeparadora(parametros);
  35. }
  36. contador++;
  37. }
  38. }

La idea es que la función separadora me devuelva cada uno de los parámetros que metemos por separado cuando haya una coma , puse que la cadena parámetro fuese igual su contenido a la cadena linea (que seria los parámetros que metemos) pero no se porque cuando ejecuto el programa no me devuelve los parámetros por separado, la duda es como puedo hacer que la cadena parámetro me vaya devolviendo el primer parámetro, el segundo, etc. Se que es una duda muy básica de programación así que disculpad las molestias.