× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum Autres langages
 URGENT ! Fin de développement d'application C++ avec MFC
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Nicolas78
  Posté le 12/06/2014 @ 20:22 
Aller en bas de la page 
Petit astucien

Bonsoir à tous !

Je vous écris en urgence, demain soir à 17h mon programme doit être terminé (s'il n'est pas terminé, je resterais en vie bien sur mais ça va être gênant pour passer mon oral).

J'ai un programme qui me permet de récupérer le poids d'une balance en RS232 ainsi qu'une étiqueteuse qui me permet d'imprimer des étiquettes avec nom du produit, prix et code-barres ! Jusque là, tout va bien !
Mais je me heurte à 2 difficultés :

La première... J'ai un "unsigned char tab2" qui récupère une chaine de caractère comme "1000 g" (le poids que m'envoie la balance). Travaillant en MFC, je récupère ce tableau dans une variable CString "m_tab2". Tout va bien ! Sauf que j'ai besoin de cette valeur en kg et non en g ! Je devrais donc diviser ce poids par 1000. Mais impossible d'y arriver (très certainement à cause du "g" en fin de chaine). L'idée serait peut être de transformer ce Cstring en int, pour moi, le int prendrait juste le numéro correspondant au poids et supprimerait le "g". De là, je pourrait diviser cette variable par 1000. Je ne sais pas comment faire... Quelqu'un a une idée ?

Le 2ème problème, j'ai une chaine de caractère dans un tableau "buffer" ! La chaine c'est quelque chose comme "1,carottes,2,5.5,3,9856478563214". L'idée, ce serait de découper cette chaine ! A chaque fois que l'on rencontre une virgule, ce qu'il a lu avant va dans un premier tableau. Et ainsi de suite ! Ce qui ferait (par exemple) : tab1 avec le "1" à l'intérieur, tab2 avec "carotte" à l'intérieur...ect... Vous voyez ?

Peut être qu'entre maintenant et 17h demain j'aurais trouvé la solution mais...rien n'est sur ! Alors pour toute l'aide que vous pourrez m'apporter : Merci beaucoup d'avance !

Bonne soirée :)

Publicité
Titus68
 Posté le 13/06/2014 à 00:51 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

Je connais vb mais pas C++, une fonction tab2.replace(' g','') çà n'existe pas ?

Pour splitter (l'exemple est avec :) :

string test="H:AMBV4:2:182.45:182.45:182.45:182.45:182.41:32:17700:3229365:201008121711:0";
cout
<< test << endl;
vector<string> event;
**This is the main call**
int evts = explode(test,':', back_inserter(event));
for(int k=0; k<evts; k++)
cout
<< event[k]<<"~";
cout
<< endl;

Nicolas78
 Posté le 13/06/2014 à 11:34 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Message original par Nicolas78

Bonsoir à tous !

Je vous écris en urgence, demain soir à 17h mon programme doit être terminé (s'il n'est pas terminé, je resterais en vie bien sur mais ça va être gênant pour passer mon oral).

J'ai un programme qui me permet de récupérer le poids d'une balance en RS232 ainsi qu'une étiqueteuse qui me permet d'imprimer des étiquettes avec nom du produit, prix et code-barres ! Jusque là, tout va bien !
Mais je me heurte à 2 difficultés :

La première... J'ai un "unsigned char tab2" qui récupère une chaine de caractère comme "1000 g" (le poids que m'envoie la balance). Travaillant en MFC, je récupère ce tableau dans une variable CString "m_tab2". Tout va bien ! Sauf que j'ai besoin de cette valeur en kg et non en g ! Je devrais donc diviser ce poids par 1000. Mais impossible d'y arriver (très certainement à cause du "g" en fin de chaine). L'idée serait peut être de transformer ce Cstring en int, pour moi, le int prendrait juste le numéro correspondant au poids et supprimerait le "g". De là, je pourrait diviser cette variable par 1000. Je ne sais pas comment faire... Quelqu'un a une idée ? CE PROBLEME EST RÉGLÉ !!!

Le 2ème problème, j'ai une chaine de caractère dans un tableau "buffer" ! La chaine c'est quelque chose comme "1,carottes,2,5.5,3,9856478563214". L'idée, ce serait de découper cette chaine ! A chaque fois que l'on rencontre une virgule, ce qu'il a lu avant va dans un premier tableau. Et ainsi de suite ! Ce qui ferait (par exemple) : tab1 avec le "1" à l'intérieur, tab2 avec "carotte" à l'intérieur...ect... Vous voyez ?

Peut être qu'entre maintenant et 17h demain j'aurais trouvé la solution mais...rien n'est sur ! Alors pour toute l'aide que vous pourrez m'apporter : Merci beaucoup d'avance !

Bonne soirée :)

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
19,99 €Micro clé USB 3.1 Sandisk Ultra Fit 128 Go à 19,99 €
Valable jusqu'au 09 Avril

Amazon fait une promotion sur la micro clé USB Sandisk Ultra Fit d'une capacité de 128 Go qui passe à 19,99 €. La minuscule taille de cette clé USB va vous permettre de la laisser brancher en permanence sur votre portable, votre TV ou votre autoradio sans qu'elle dépasse de manière disgracieuse. Sa compatibilité USB 3.1 lui permet d'atteindre des débits jusqu'à 130 Mo/s. 


> Voir l'offre
33,90 €Caméra de surveillance TP-Link Tapo C200 à 33,90 €
Valable jusqu'au 12 Avril

Amazon fait une promotion sur la caméra de surveillance TP-Link Tapo C200 qui passe à 33,90 € livrée gratuitement au lieu d'une quarantaine d'euros ailleurs. Cette caméra se connecte à votre réseau en WiFi et peut ensuite être contrôlée à distance. Elle offre une définition FullHD 1080p, la vision nocturne, la détection de mouvements (recevez une notification si quelque chose est détecté), une alarme sonore et visuelle. Le stockage se fait en local sur une carte MicroSD.


> Voir l'offre
143,44 €Kit de 32 Go (2 x 16 Go) de mémoire DDR4 Corsair Vengeance LPX 3000 MHz à 143,44 € livré
Valable jusqu'au 10 Avril

Amazon Espagne fait une belle promotion sur le kit de 32 Go (2x16 Go) de mémoire DDR4 Corsair Vengeance LPX 3000 MHz CL16 qui passe à 138,80 € (avec la TVA ajustée). Comptez 4,64 € pour la livraison en France soit un total de 143,44 € livré. alors qu'on le trouve ailleurs à plus de 200 €.

Vous pouvez utiliser votre compte Amazon France sur Amazon Espagne et il n'y a pas de douane.


> Voir l'offre

Sujets relatifs
cours de developpement avec windev7.0
Ameliorer le Main "Java" avec les fonctions & procédures
concatenation avec Arduino
Problème avec WinPython - Spyder
programmeur d'application android / iphone
Convertir un fichier image de 2002 avec extension ".GOOD"
Correction conditionnelle avec TEXTPAD OU NOTEPAD
Site dynamique avec Dream et Wamp
macro excell pour ouverture fichier avec password
mettre une application vb.net sur une page web
Plus de sujets relatifs à URGENT ! Fin de développement d''application C++ avec MFC
 > Tous les forums > Forum Autres langages