Message Queue Problem Again..

Is there any way one can delete , say , a particular message from a message queue on system V?

Reading a message from the message queue using msgrcv essentially removes the message from the queue.

To quote the msgrcv man page:

Check this link.

Just to elaborate on Blow Torch's answer. The message queues are internal kernel structures and cannot be viewed or changed directly by your process.

On some implementations you can get the memory address of the first and last message in a queue, but because this is outside your programs alloted memory area, the OS will never let you access the address directly with a pointer.

The only way your process can get at the contents on the message queue is to use the defined interface - msgrecv().