Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: MRx86 en 25 Noviembre 2016, 22:04 PM

Título: ayuda con codigo en C++
Publicado por: MRx86 en 25 Noviembre 2016, 22:04 PM
Hola, bueno estaba aburrido en mi casa y me puse a programar, y en eso me encontre con un error, este es el codigo:

Código (cpp) [Seleccionar]


#include <iostream>
#include <string.h>

using namespace std;

int main(int argc, char **argv)
{
if (argc < 2)
{
cout << "muy pocos argumentos.";
return -1;
}

unsigned int i;

for (i = 0; i < argc; i++)
{
if (!strcmp(argv[i], "-a"))  
                               cout << "uno de los parametros fue un -a" << endl;

else
if (!strcpy(argv[i], "-b"))
cout << "uno de los parametros fue un -b" << endl;


else
if (!strcpy(argv[i], "-c"))
cout << "uno de los parametros fue un -c" << endl;
}

       return 0;
}



el problema es el siguiente:

cuando ejecuto el programa en el CMD pasa esto:

C:/> prueba -a -b -c

me sale:

uno de los argumentos fue un -a

y ya, no sale mas nada, cuando deberia salir

uno de los argumentos fue un -a
uno de los argumentos fue un -b
uno de los argumentos fue un -c

la pregunta es, porque no sale esto??

Gracias

Título: Re: ayuda con codigo en C++
Publicado por: _Slash_ en 25 Noviembre 2016, 22:28 PM
Es sencillo el error que tienes, en el primer if estas usando strcmp y en los otros dos tienes strcpy, por lo tanto también debes de usar en estos dos últimos strcmp.

Saludos.
Título: Re: ayuda con codigo en C++
Publicado por: MRx86 en 26 Noviembre 2016, 02:01 AM
Aah tienes razon muchas gracias.. de verdad que tonto fui jajaja, eso me pasa por intentar reutilizar codigo copiando y pegando algo que habia hecho antes de eso.