Я использую эту функцию в своей программе, и я вызываю ее receive(&head);
. Я делаю что-то неправильно и получаю сообщение об ошибке c2664: невозможно преобразовать параметр 1 из «link **» в «link *» при вызове QUEUEget(&head)
. Если я правильно понимаю, (*head)
- это ссылка на другую ссылку, поэтому я должен сделать что-то вроде (&(&head))
, но это не сработает.Ошибка C2664, необходимо уточнить
void receive(link *head){
int j;
for (j=0;j<WINDOW;j++){
if (((*head)->status==PENDING) || ((*head)->status==NEW)) {
(*head)->status=ACK;
printf("Packet No. %d: %d\n",(*head)->packetno,(*head)->status);
QUEUEget(&head);
}
}
}
Попробуйте 'QUEUget (head);' – JBentley