Título: [?] cambiar una comparacion de const char * a metodo string.compare Publicado por: Drakomorh en 24 Mayo 2011, 23:35 pm Hola amigos:
Como puedo pasar de cosnt char* string y poder hacer la siguiente parte del codigo: Original: Código
y ahora quiero usar la clase string tal que... Código
la aplicacion sigue funcionando, pero siempre entra en el if. A alguien se le ocurro como tengo que hacer la comparacion¿? Gracias y un saludo. Título: Re: [?] cambiar una comparacion de const char * a metodo string.compare Publicado por: Drakomorh en 24 Mayo 2011, 23:50 pm Hola amigos:
He probado a usar : Código
Ahora ya no entra siempre en el if, pero no se me ocurre como probar si llegado el momento entrara... Gracias y un saludo. Título: Re: [?] cambiar una comparacion de const char * a metodo string.compare Publicado por: Littlehorse en 25 Mayo 2011, 18:58 pm Ten en cuenta que no es lo mismo comparar si el objeto contiene una cadena "0" que si el contenido es 0. Puedes chequear el ejemplo de cplusplus sobre el método compare:
Código
Primero tenes que decidir si estas tratando de comparar si la cadena es o no NULL o si estas tratando de comparar si el contenido de la cadena es o no 0. Definido eso puedes proceder con la forma que corresponda. A simple vista no es necesario usar c_str en el ejemplo que expones, pero si lo fuese, lo estas haciendo mal por lo anteriormente mencionado. Cuidado con meter casteos "para ver si funciona" sin saber realmente el objetivo del casteo, porque a veces el asunto podria parecer que funciona pero no. Por lo pronto si te quieres sacar la duda puedes poner un breakpoint en el if e iniciar la depuración (debug) para comprobar que contiene "macs" y que te devuelve el método compare y demás. La mayoría de los IDEs tienen opciones para poder visualizar el contenido de las variables en forma individual durante la ejecución del programa, así que busca cual es la forma de hacerlo en tu IDE. Generalmente encontraras esa opción como "Expressions" o "Watch" o algo similar. Saludos PD: He visto que haces mucho doble post y hasta a veces triple post. Trata de usar el botón modificar. |