A ver si es esto:
void intercambio(tipodatos *arg1, tipodatos *arg2)
{
  tipodatos temp;
  temp.tllegada = arg1->tllegada;
  temp.tdemandado = arg1->tdemandado;
  temp.sgte = arg1->sgte;
  temp.ant = arg1->ant;
  arg1->tllegada = arg2->tllegada;
  arg1->tdemandado = arg2->tdemandado;
  arg1->sgte = arg2->sgte;
  arg1->ant = arg2->ant;
  arg2->tllegada = arg1->tllegada;
  arg2->tdemandado = arg1->tdemandado;
  arg2->sgte = arg1->sgte;
  arg2->ant = arg1->ant;
}
Es un poco burraco el algoritmillo pero supongo que funciona.

. No se si existira alguna funcion que te copie estructuras enteras, pero bueno, al fin y al cabo acabara por ser lo mismo. Espero haberte ayudado.
Saludos.