typedef struct node* link;
struct node { int item; link next; };
typedef link Node;

link deleteNext(link x){
link t = x->next; x->next = t->next;
return t; }


link t=x->next;
新たなlink tを作り、tにxの指し示すリンクと同じitem,リンク先を持たせている

x->next = t->next;
xのリンク先はtが指し示すリンク先にする

で合ってますか?
だとしたらreturnでtだけ返すのだからx->nextを指定しても何の意味もないと思うのですが、何か記号の意味を履き違えている気がします