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

C++ Discussion :

envoi une trame de donnée


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2015
    Messages : 23
    Par défaut envoi une trame de donnée
    bonsoir,
    je suis en train de développer une application me permet de créer un système d'automatisation.
    j'ai une petite problème concernant une commande ; l’opérateur va saisie un nombre décimal par exemple 100000 qui est en hexa 0x186A0 donc il suffit de le diviser en 3 parties 0x01 0x86 0xA0
    est ce que vous pouvez m'aidez pour avancer dans mon projet ?
    vous trouvez ci joint le code du programme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    #include "stdafx.h"
    #include <stdio.h>
    #include <stdlib.h>
    #include <stdint.h>
    #include <iostream>
    #include <string>        
    #include <sstream> 
    using namespace std;
    int _tmain(int argc, _TCHAR* argv[])
    {
    	uint16_t res1 = 0xFFFFFF;
    	int D = 0;
    	uint8_t tab[3];
    	printf("donner valeur decimal: ", D);
    	cin >> D;
    	std::stringstream ss;
    	ss << std::hex << D;
    	std::string res(ss.str());
    	std::cout << res;
     
    	res1 = (uint16_t)res.c_str();
     
    	tab[0] = res1 & 0xFF;
    	printf("\n val 1: %x", tab[0]);
    	tab[1] = (res1 & 0xFF, res1 >> 8) ;
    	printf("\n val 2: %x", tab[1]);
    	tab[2] = (res1 & 0xFF, res1 >> 16);
    	printf("\n val 3: %x", tab[2]);
     
    	return 0;
    }

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 512
    Par défaut
    "0xFFFFFF", ça ne rentre pas dans un uint16_t.
    Les lignes 16 à 22 ne servent qu'à faires des bugs, via des cast à la C totalement cons.

    A la fin, c'est du code C, pas vraiment C++.

    Et si c'est pour les envoyez dur la console standard, il y a beaucoup plus simple, en C++.

Discussions similaires

  1. [Réseau] Connexion et envoie d'une trame
    Par ivanoe25 dans le forum Langage
    Réponses: 10
    Dernier message: 29/09/2006, 00h04
  2. JTextField, envoie du text a une base de données.
    Par niklette dans le forum Composants
    Réponses: 2
    Dernier message: 05/06/2006, 20h23
  3. [MySQL] Envoi d'information dans une base de donnée via formulaire
    Par Mysti¢ dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 30/03/2006, 20h35
  4. Envoi d'une base de données MySQL par e-mail
    Par Paulinho dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 27/12/2005, 00h22
  5. Problème avec l'envoi d'une trame TCP
    Par fredoBreton dans le forum API, COM et SDKs
    Réponses: 14
    Dernier message: 17/11/2005, 20h19

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