LinkList 可以换成void吗

//尾插法建立单链表
LinkList InsertList(LinkList &L){
int i;
L=(LinkList)malloc(sizeof(LNode));
L->data=1000;
LNode *s, *q = L;//q为链表的指针
printf("请按递增顺序输入数值:\n");
scanf("%d",&i);
while(i!=0) { //输入 0表示结束
s=(LNode *)malloc(sizeof(LNode));
s->data = i;
q->next = s;
q=s;//q指向新的表尾结点
scanf("%d",&i);
}
q->next = NULL;//尾结点指针置空
}

返回值可以改为void*,接收者强制转换。参数可以改为void *&,函数内强制转换为LinkList