He hecho las cosas que me has dicho y me dan errores de compilacion en las funciones include
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
estas funciones estan en dos .c pero no estan en funciones.c que contiene la definicion de las funciones que quiero compartir entre ambos programas y que compilo a la vez. No entiendo pq dan errores en funciones que ya vienen dadas por el lenguaje.
Tambien tengo este error:
scanner2.lex:123: error: parse error before numeric constant
scanner2.lex:123: warning: type defaults to `int' in declaration of `acciones'
scanner2.lex:123: warning: data definition has no type or storage class
He definido la funcion fuera del main
void acciones (int);
y despues, desde el main la llamo asi acciones(3); Segun mi libro de programacion esta es la forma correcta pero da error
Esto tampoco lo entiendo
scanner2.lex:210: warning: type defaults to `int' in declaration of `aux'
scanner2.lex:210: error: redefinition of `aux'
scanner2.lex:199: error: `aux' previously defined here
Esta es la linea 210
aux=sprintf(cadena,"- ERROR morfologico en la linea: %d. \n\n",yylineno);
y esta la 199
aux=sprintf(cadena,"- ERROR: identificador duplicado: %s de tipo %s en la linea: %d \n\n",yytext, cadena, yylineno);
Ambas lineas estan metidas dentro de un case, casa una en una opcion.
La variable aux antes era INT y ahora es char[100]. Esta variable esta declarada fuera del main.
Un saludo y muchas gracias por tu paciencia conmigo
