Dev - C++ - Error de sintaxis al compilar con gcc

   
Vista:

Error de sintaxis al compilar con gcc

Publicado por espi (2 intervenciones) el 22/12/2014 18:59:54
hola, estoy haciendo un proyecto para una asignatura de programación en c y al compilar (con gcc) la función principal main, el compilador me da un error de sintaxis, exactamente:

cliente.c:19:1: error: expected ‘;’, ‘,’ or ‘)’ before ‘{’ token
make: *** [cliente.o] Error 1

la línea 19 es justo la siguiente al main, es decir donde esta la llave {

estos errores sulen ser fáciles de resolver pero no consigo ver donde está el problema, ya que en la línea indicada no lo veo.

el código es:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <arpa/inet.h>

/*includes de la aplicación */
#include "cliente.h"

/* programa principal */
int main (int argc, char *argv[])
{

int error = 0; /* detectará los errores y valdrá 1 en ese caso */

if(argc != 7) /* comprobamos el número de argumentos en la linea de comandos */
{
fprintf(stderr, "ERR1\n"); /* si es incorrecto, imprimimos el error correspondiente y finalizamos el programa */
error = 1;
}
else
{
if((strcmp(argv[1],TCP) != 0)&&(strcmp(argv[1], UDP) != 0)) /*comprobamos que las opciones sean correctas (-t ó -u)*/
{
fprintf(stderr,"ERR2\n"); /* si es incorrecto, imprimimos el error correspondiente y finalizamos el programa */
error=1;
}
else
{
if((strcmp(argv[5],SUMA) != 0)&&(strcmp(argv[5],RESTA) != 0)&&(strcmp(argv[5],MULTIP) != 0))
{
fprintf(stderr,"ERR3\n"); /* si es incorrecto, imprimimos el error correspondiente y finalizamos el programa */
error = 1;
}
else
{
if((atoi(argv[4]) == 0)||(atoi(argv[6]) == 0)) /*comprobamos que los operandos sean numeros enteros */
{
fprintf(stderr, "ERR4\n"); /* si es incorrecto, imprimimos el error correspondiente y finalizamos el programa */
error = 1;
}
else
{
if(strcmp(argv[1],TCP) == 0)
{
error = tcp(argv);
}
else{
error = udp(argv); }
}
}
}
}

return error;
}



GRACIAS :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Error de sintaxis al compilar con gcc

Publicado por Jose Manuel (30 intervenciones) el 22/12/2014 22:12:26
1
if(argc != 7) /* comprobamos el número de argumentos en la linea de comandos */

Ahí falta el ";" de final de línea, probablemente sea eso.

Este tipo de errores son muy típicos, te dice que falta algo, en las lineas anteriores. Conviene repasarlas

Por cierto, identar es una buena costumbre y el código gana en legibilidad, lo digo como sugerencia solo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Error de sintaxis al compilar con gcc

Publicado por espi (2 intervenciones) el 22/12/2014 22:16:32
eso no puede ser ya que esa linea es una condicion no llevan ;

ya encontré el problema, estaba en otro fichero.
Muchas gracias de todas formas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar