>tu problema es como estructuraste el if con las llaves {}
>
>> if (((strcmp ("/help", buffer_c) == 0)) || ((strcmp ("/h", buffer_c) ==
>> 0))) {
>> {
>> printf("Comando para ayuda");
>> }
>>
>> if (strcmp("/quit", buffer_c) == 0) {
>> printf("Se ha salido del chat");
>> close(sockfd);
>> }
>> }}
>
>fijate que *dentro* de las llaves del primer if (valida si es help) esta el
>segundo if (valida si es quit)
>por ende nunca te va a reconocer el fin de transmision que planteas
>
Lo hice de esta forma, pero igualmente no me reconoce el /quit o el /help
while(1)
{
printf("Mensaje para enviar al servidor -> ");
fgets(buffer_c, sizeof(buffer_c), stdin);
if (((strcmp ("/help", buffer_c) == 0)) || ((strcmp ("/h",
buffer_c) == 0)))
{
{
printf("Help ... /quit --> cliente cierra el
socket\n");
}
if (strcmp("/quit", buffer_c) == 0)
{
printf("Se ha salido del chat\n");
close(sockfd);
}
}
n = send(sockfd, buffer_c, strlen(buffer_c), 0);
if (n <= 0) {
printf("error en write()");
close(sockfd);
exit(-1);
}
printf("Message Ok\n");
}
Manda los mensajes correctamente, pero no me toma el "/quit" ni el "/help" o "h"
--
/* Leonardo Rios
* rios[dot]lj[at]gmail[dot]com
*/
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion