Programación General => C/C++ => Mensaje iniciado por: desquiciado en Lunes 22 de Diciembre de 2003, 16:54
Título: ¿estoy Tonto O Que?
Publicado por: desquiciado en Lunes 22 de Diciembre de 2003, 16:54
¿Alguien me puede ayudar, y deirme porque cuando escribo "sum" al ejecutar el programa, no me ejecuta el if? Gracias #include<iostream.h> #include <stack.h> #include <string.h> #include <math.h>
void main() { char* p;
double x,s;
cout<< "Escribe char * : "; cin>>p;
if(p=="sum") { x=6.98;
cout<<x<<"La palabra es:"<<p; }else{
cout<<"La mierdapalabra es:"<<p;
} }
Título: Re: ¿estoy Tonto O Que?
Publicado por: JuanK en Lunes 22 de Diciembre de 2003, 17:41
Hola, primero que todo tratare de modificar tu titulo...no es necesario decir grocerias para que te ayuden.. segundo lo que pasa es que así no se comparan cadenas.. esta mal:
Código: Text
if(p=="sum")
se debe hacer asi:
Código: Text
if(strcmp(p, "sum")==0)
porque en lengueje c, comparar una cadena es comparar varios char secuendicados en memoria, puedes hacerlo manuelmanente o utilizar una funcion ya hecha para ese fin como la que te mostre arriba.