Error de sintaxis cerca del símbolo inesperado « ( » ./test.c: l

Resuelto
dragons2 Mensajes publicados 182 Estado Miembro -  
[Dal] Mensajes publicados 6122 Fecha de registro   Estado Colaborador Última intervención   -
¡Hola a todos!
Bueno, estoy empezando a aprender el lenguaje C, estoy codificando en Linux usando el comando:
gcc (nombre del archivo).c -Wall -o (nombre del archivo)
luego:
./nombre del archivo
Todo ha ido bien durante 2 semanas, pero desde ayer no puedo ejecutar un programa. Siempre tengo el mismo error sin importar el código.
./test.c: línea 2: error de sintaxis cerca del símbolo inesperado « ( »
./test.c: línea 2: `int main(void)'
He intentado dar permisos al archivo con: chmod +x nombre del archivo, ¡y no hay manera!
El problema es que uso mucho mi computadora para la universidad, soy estudiante de informática. Necesito poder codificar con mi computadora.
Agradezco de antemano la ayuda que me puedan brindar.

2 respuestas

  1. dragons2 Mensajes publicados 182 Estado Miembro 2
     
    Il semble que vous ayez des problèmes de permissions et de syntaxe avec votre fichier. Pour exécuter un fichier C, vous devez d'abord le compiler en un exécutable. Voici les étapes :

    1. Compilez le code source avec `gcc exo7.c -o exo7`.
    2. Ensuite, donnez des permissions d'exécution avec `chmod +x exo7`.
    3. Vous pouvez maintenant exécuter le programme avec `./exo7`.

    Le message que vous avez reçu indique que vous tentiez d'exécuter le fichier source (.c) directement au lieu de l'exécutable. Assurez-vous donc de compiler d'abord le code avant de tenter de l'exécuter.
    1
    1. [Dal] Mensajes publicados 6122 Fecha de registro   Estado Colaborador Última intervención   1 108
       
      El error es producido por bash, tu intérprete de comandos de Linux, porque intentas ejecutar el código fuente (el archivo .c) y no el código objeto producido como resultado de la compilación. Arriba, primero bash se niega a ejecutar el archivo .c, ya que no tiene el atributo "x". Luego, cuando le asignas este atributo, bash intenta ejecutar el contenido del archivo de texto a través de bash, y, por supuesto, como no se trata de un script de bash, te señala un error de sintaxis.

      Si tu comando de compilación es:
      gcc exo7.c -Wall -o exo7


      este comando produce un ejecutable llamado "exo7" a partir de "exo7.c"

      Bajo Linux, lanzas el ejecutable así:
      ./exo7
      0