Profesor, imagine el inicio del proyecto de este modo:
Creo dos proyectos que tenga las mismas funciones, con interaccion manual.
los mismos estan enlazados por un archivo de dato.
el archivo de dato guarda el segmento TCP(siempre al finalizar una cominicacion se borra todo lo que hay dentro).
La compilacion de los proyectos:
limpia los archivos
Inicia con un encabezado(determina el Puerto )
Los dos estaran en un bucle LISTEN (revisan el archivo dato vacio para ver si se lleno) y un printf/scanf para iniciar un
llenado de datos(por terminal)
si uno inicio el llenado entonces el otro lee el archivo prosigiendo al cierre del bucle LISTEN (sigue funcionamiento del TCP).
El vaciado de los archivos deberia ser manual ya que no reconosco codigos que me ayuden a vaciar un archivo.
El llenado de datos se limito a tan solo un TEXTO que en el segmento completo es DATOS.
El puerto e IP no seran ingresados por terminal por mera comodidad de quien esta usandolo.
Los procesos de funciones estaran separadas entre lineas para ser mas legible.
Se usan 2 archivos uno Datos.dat y otro servicios.dat el primeor es para la comunicacion de las dos terminales y el segundo es para Respaldar el ultimo segmento enviado para cuando se necesite Finalizar la comunicacion, porque sera necesario del Encabezado.
Profesor, imagine el inicio del proyecto de este modo: