int shmget(key_t IdentifiantMemoire, int Taille, int Masque);
Soit il s'agit de :
Le résultat est le numéro de la mémoire partagée.
#include <stdio.h>
#include <sys/shm.h>
int NumeroMemoirePartagee;
void *AdresseMemoirePartagee;
MemoirePartagee=shmget((key_t)12345, 1, 0666|IPC_CREAT|IPC_EXCL);
if (!MemoirePartagee)
{
...
}
...
AdresseMemoirePartagee=(void *)shmat(NumeroMemoirePartagee, NULL, 0);
if (!AdresseMemoirePartagee)
{
...
}
...
if (shmdt((char *)AdresseMemoirePartagee)==-1)
{
...
}
if (shmctl(NumeroMemoirePartagee, IPC_RMID, NULL)==-1)
{
...
}
...