Ayuda con C++ y argumentos del main

Hola a todos, a ver si me podeis hechar una mano seguro que es una tonteria pero ya estoy cegado y no veo el fallo xD

necesito que si el argumento i es igual a MOS(de mostrar xD) pues me imprima todo el vector de vectores, pero lo pongo así y no hace nada

ya no se que hacer

                if(argv[i]=="MOS"){                       
                   
                                                                           
                         for(j=0;j<cont;j++)
                         {
                                             
                                cout<<tabla[j]<<endl;}
                               
                }




salu2 y gracias
if(argv[i]=="MOS"){

Con eso estas comparando el puntero de argv y el puntero
de donde este guardada la constante "MOS"
siempre te dara falso

Necesitas usar la funcion

int strcmp(const char *s1, const char *s2)
ó
int strncmp(const char *s1, const char *s2, size_t n);

para más info man strcmp
mierda!!!

mira que lo he pensado pero como estoy trabajando con strings pense que con el == valia

voy a probar


gracias [oki]

EDITO:

solucionado!!!! mil millones de gracias


salu2
Teniente Dan escribió:mierda!!!

mira que lo he pensado pero como estoy trabajando con strings pense que con el == valia



¬_¬ [toctoc]

Precisamente como estas trabajando con strings debes utilizar la funcion strcmp para poder comparar dos cadenas
Salu2 [bye]
Exacto... estas intentando comparar un vector con una cadena, y eso no se puede. Como te ha dicho Harl, utiliza strcmp.

Saludos!
4 respuestas