LePhasme Posté(e) le 6 février 2006 Partager Posté(e) le 6 février 2006 Bonjour, je voudrais savoir si il y a des types de données prédéfinis pour stocker des adresses IP et des adresses MAC en C, ou si je stock tout simplement dans des char * . Pour les adresses MAC j'ai trouvé un type u_int8_t mais je trouve pas d'infos dessus. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Xfaillez Posté(e) le 6 février 2006 Partager Posté(e) le 6 février 2006 Pourquoi faire? Dans un char*, c'est bon. Ca fait longtemps que je n'ai pas fait de C réseau avec les sockets mais il me semble que les fonctions réseaux utilisent le type char* pour stocker les adresses. Après, ça dépend comment tu vas exploiter ces données. Lien vers le commentaire Partager sur d’autres sites More sharing options...
tsubasaleguedin Posté(e) le 6 février 2006 Partager Posté(e) le 6 février 2006 Tu peux faire des tableaux aussi ... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Xfaillez Posté(e) le 6 février 2006 Partager Posté(e) le 6 février 2006 Les char* sont des tableaux (dynamiques) Lien vers le commentaire Partager sur d’autres sites More sharing options...
LePhasme Posté(e) le 6 février 2006 Auteur Partager Posté(e) le 6 février 2006 Je dois les utiliser simplement pour permettre le listage de poste connectés sur un système et peut-etre créer une backlist. Je crois que je vais utiliser de simple char * ca semble le plus indiqué. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Le Saigneur Sombre Posté(e) le 13 février 2006 Partager Posté(e) le 13 février 2006 Pour les adresse MAC je sais pas. Regarde les fonctions que tu veux utiliser, elle ont forcement un type défini... Sinon pour les adresses IP, ca depends ce que tu veux en faire. Je t'ai extrait un bout de code qui ouvre une socket. La structure pour l'adresse ip (entre autre) est struct sockaddr_in stSin. Mais suivant ce que tu veux en faire, le char* marche parfaitement... struct sockaddr_in stSin; bzero(&stSin,sizeof(stSin)); stSin.sin_family = AF_INET; // IPV4 bcopy(pstHost->h_addr,&stSin.sin_addr.s_addr,pstHost->h_length); stSin.sin_port = htons(nPort); // Connection if(connect(nSock, (struct sockaddr*) &stSin,sizeof(stSin)) < 0) return SOCKET_CONNECT_ERROR; Lien vers le commentaire Partager sur d’autres sites More sharing options...
LePhasme Posté(e) le 13 février 2006 Auteur Partager Posté(e) le 13 février 2006 Merci bien, on m'avait effectiment parlé des types fourni pour les sockets, à première vue je dois juste les utiliser pour faire des comparaisons donc je crois que je vais me contenter des strings, mais suivant les besoins de l'implémentation j'utiliserai peut-etre les socketadr. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.