----- Original Message -----
From: "malet jean-luc alias cityhunter" <[EMAIL PROTECTED]>
To: [email protected]
Subject: Re: c++ problème très très bête :
Date: Mon, 12 Sep 2005 13:33:18 +0200
>
> Jean-Max Reymond a écrit :
>
> > Le 12/09/05, malet jean-luc alias
> cityhunter<[EMAIL PROTECTED]> a écrit :
> >
> >
> >> j'ai le code suivant :
> >>
> >> struct sockaddr_in my_addr;
> >> struct hostent * peer;
> >>
> >> peer = gethostbyname(destination);
> >> my_addr.sin_addr.s_addr = *((struct in_addr_t*)(peer->h_addr_list[0]));
> >>
> >>
> >> et j'obtiens le message d'erreur :
> >> connection.cpp:42: ne peut convertir « in_addr_t » vers « in_addr_t »
> >> dans assignment
> >>
> >>
> >> j'ai bien vérifié s_addr est de type in_addr_t (lui mm un typedef
> >> uint32_t in_addr_t)
> >>
> >> quelques idées?
> >>
> >>
> >
> >
> > en C, pas de support natif de la copie de deux structures donc memcpy
> > obligatoire
> >
> >
> >
> c'est du C++....
C'est pas parce que TU codes en C++ que ce n'est pas une API C...
D'ailleurs, si mes souvenirs sont bon, en regardant les fichiers
d'en tetes, qui sontles mêmes en C et C++, tu as un truc du genre :
#ifdef __cplusplus
extern "C" {
#endif
....
#ifdef __cplusplus
}
#endif
Et donc, a priorie, le compile gère cela comme une structure C (ce
qui parait normalle puisque tu vas la fournie à une API C ) et
n'implémente pas le "mécanisme" des fonctions et donc des
opérateurs de réaffectation.
Fred
--
_______________________________________________
Check out the latest SMS services @ http://www.linuxmail.org
This allows you to send and receive SMS through your mailbox.
Powered by Outblaze
Linux-Azur : http://www.linux-azur.org
Désinscriptions: http://www.linux-azur.org/liste.php3
**** Pas de message au format HTML, SVP ****