Concaténation des chaines de caractères non signés en C++
sloumanaw
Messages postés3Date d'inscriptionvendredi 7 janvier 2011StatutMembreDernière intervention16 mai 2011
-
22 avril 2011 à 21:33
sloumanaw
Messages postés3Date d'inscriptionvendredi 7 janvier 2011StatutMembreDernière intervention16 mai 2011
-
23 avril 2011 à 01:32
Bonjour,
Je cherche un petit programme en C++ qui envoi et reçoit des trames à partir d’une interface Ethernet (soit à l’aide de winpcap ou autre). Svp si quelqu’un dispose d’un code source qui peut m’aider pour gagner du temps et mieux avancer car je suis débutante en C++ et j’ai vraiment besoin de cette partie de programmation afin d’accomplir un autre travail.
Sinon j’essaye entre temps, de coder toute seule en utilisant visual C++ 2010. Mais j’ai encore un petit problème car en codant la couche transport j’ai besoin de construire un paquet UDP donc je dois concaténer l’entête UDP avec le message que je souhaite envoyer.
j’ai pensé à la fonction strcat(chaine1,chaine2) mais ça n’était pas la solution vu que mes variables sont de type caractère non signé et cette fonction permet seulement de concaténer les chaines de caractère signé. Alors j’ai pensé à les mettre dans une structure comme suit
struct packetUDP
{
unsigned short UDPportSrc;
unsigned short UDPportDest;
unsigned short UDPlength;
unsigned short UDPchecksum;
unsigned char Message[500];
};
Est-ce que c’est la bonne solution svp? Sinon comment je fais. Parce que j’ai pensé aussi à la fonction
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 22 avril 2011 à 22:04
Signé ou non signé n'entre pour rien dans l'affaire, ce sont toujours des octets.
strcat() traite des chaines qui sont des SUITES D'OCTETS FINISSANT AU 1er zéro rencontré. Dans les paquets UDP il peut fort bien y avoir des octets=ZERO donc exit strcat et autres fonctions de chaine.
sloumanaw
Messages postés3Date d'inscriptionvendredi 7 janvier 2011StatutMembreDernière intervention16 mai 2011 23 avril 2011 à 01:32
si j'ai bien combien je dois utiliser un socket client pour envoyer le paquet à la couche suivante qui doit contenir de même un socket serveur?
j'ai cru qu'on n'utilise les sockets que pour communiquer entre deux processus différents(deux ordinateurs..)