Ouaip j'ai trouvé une solution grâce à toi.
Si ça peut aider certain :
void writeDouble(double d)
{
char *buftmp = new char [sizeof(double)];
*(double *)buftmp = d;
_buf += buftmp; // mon _buf est une string d'où le +=
}
double readDouble()
{
double d = *(double *)(_buf + _pos); // ici _buf est un const char * (celui qui vient de la socket)
_pos += (int)sizeof(double);
return (d);
}