'devices' is a struct of type queue_t, you assign it's own address to the two members *q_next and *q_prev. I guess this is the inital state of your queue, where it's self referential.
Originally Posted by rinky05
Try adding this after the line that confuses you:
This doesn't mean that you won't need a data element in the struct however, although it's possible to create without one it's pointless since you can not add anything to your queue.
printf("%p %p %p\n", &devices, devices.q_next, devices.q_prev);