IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage C++ Discussion :

Socket: Comment envoyer et recevoir des octets?


Sujet :

Langage C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mars 2010
    Messages : 62
    Points : 33
    Points
    33
    Par défaut Socket: Comment envoyer et recevoir des octets?
    Bonjour,

    Je m'appelle Amélie et je suis en apprentissage.
    Je commence à apprendre en C++ (j'ai suivis en partis le tutorial du site et d'autres tutoriaux) étant familière en programmation C et ayant un peu fait de java pour la programmation objet j'éssaye de me débrouiller.

    Mais j'ai un problème.
    J'ai réussis a faire un programme sur les Socket basé sur un client et un server s'envoyant simplement des "Hello". Mais maintenant je veu arriver a envoyer des octets et là je ne sais pas comment faire. je suis perdue.

    Il faut savoir que mon programme se basait sur entre autre deux fonctions pour envoyé et recevoir une chaine de caractère: SendLine et ReceiveLine quié tait déclaré dans un header et définiot dans un source a part (c'est de toute façon comme ça que l'on fait dans les languages programmé objet a ce que j'ai compris).
    J'aimerais donc tout simplement creer une fonction SendBytes et ReceiveBytes que je pourrais définir et utilisé comme bon me semble mais je n'ai aucune idée sur la gestion des octets.

    Voila.

    Merci a ceux qui feront attention a ce post.

    Cordialement.

  2. #2
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 629
    Points : 30 692
    Points
    30 692
    Par défaut
    Salut, et bienvenue sur le forum.

    A vrai dire, une chaine de caractères n'est jamais considéré que comme... un tableau de caractères lorsqu'elle est transmise.

    Et, comme un caractère, ce n'est jamais qu'un byte auquel nous donnons une signification particulière (car sa valeur représente l'indice de la représentation dans la table ASCII ou similaire), il n'y a pas à proprement parler de différence entre l'envoi d'une chaine de caractères et l'envoi d'un byte.

    La seule différence flagrante qu'il peut apparaitre, c'est que tu dois te donner la possibilité d'envoyer des byte qui sont susceptibles de passer pour des caractères non imprimables ou ésotériques.

    Il faut ajouter à cela la nécessité de convertir éventuellement les types numériques en une succession de byte dont le nombre est compatible avec la taille du type à envoyer.

    La manière générale pour y arriver est de créer un buffer de unsigned char et d'y placer les informations à envoyer en les convertissant à coup de reinterpret_cast, afin d'envoyer le buffer complet une fois toutes les conversions effectuées.

    Au moment de la réception, il "suffira" de faire le travail inverse, à savoir récupérer l'ensemble des informations transmises dans un buffer de unsigned char et les récupérer une à une en les convertissant au besoin dans le type d'origine.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mars 2010
    Messages : 62
    Points : 33
    Points
    33
    Par défaut
    Bonjour Philippe, merci pour ta réponse.

    Je vais éssayer de bien tout comprendre et voir avec mon programme ce que tu m'as dit.

    Honnetement je n'avais pas eu la démarche (dans ma tête) de me dire que caractère = byte particulier.

    Merci beaucoup. Ca va me faire pas mal avancé sur mon programme.

    Bonne après midi a toi.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mars 2010
    Messages : 62
    Points : 33
    Points
    33
    Par défaut
    Je crois que je vais vraiment recommencer les tutoraix en C++ parce que je ne comprend pas grand chose, j'ai un peu voir beaucoup de mal avec l'écriture C++.
    En tout cas encor merci pour l'aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. C++/Problème envoyer recevoir des octets dans un tableau
    Par LiaGalanodel dans le forum Langage
    Réponses: 14
    Dernier message: 11/05/2010, 09h10
  2. Comment Envoyer et recevoir des mails en VBS
    Par lucke_widness dans le forum VBScript
    Réponses: 1
    Dernier message: 27/10/2009, 22h45
  3. Réponses: 0
    Dernier message: 02/09/2008, 21h06
  4. Envoyer et recevoir des fichiers aves les Sockets
    Par kaderscream dans le forum C++Builder
    Réponses: 2
    Dernier message: 20/08/2006, 17h51
  5. Comment arréter de recevoir des spam?
    Par argon dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 01/10/2005, 19h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo