> 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 participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
999,99 €PC Portable 16.1' HP Victus (FHD, Core i5 11400H, 16Go/512Go,RTX 3600 6Go) à 999,99 €
Valable jusqu'au 27 Janvier

Cdiscount fait une réduction sur le PC Portable 16.1' HP Victus 16-d0206nf qui passe à 999,99 € au lieu de 1200 €.

Il comporte un écran IPS Full HD de 16.1 pouces, un processeur Intel Core i5 11400H, 16 Go de RAM, un SSD NVMe de 512 Go, une carte graphique dédiée GeForce RTX 3600 6 Go, un clavier rétro éclairé, une batterie charge rapide (autonomie 10h).

Le tout tourne sous Windows 10 que vous pourrez passer à Windows 11. Une bonne affaire !


> Voir l'offre
24,99 €Clé HDMI Fire TV Stick 2021 (Prime Video, Netflix, Disney+, Molotov, MyCanal sur votre TV) à 24,99 €
Valable jusqu'au 25 Janvier

Boulanger fait une superbe promotion sur sa nouvelle clé HDMI Amazon Fire TV Stick qui passe à 24,99 € au lieu de 39,99 €. Cette clé HDMI à brancher sur votre TV possède un processeur quadricoeur, 1 Go de RAM et 8 Go d'espace de stockage, le WiFi et le bluetooth. Avec elle, vous allez pouvoir voir facilement Prime Video, Netflix, Disney+, YouTube, Molovov, MyCanal, Spotify sur votre TV Full HD. Cette nouvelle version 2021 est compatible Alexa. Une télécommande avec des boutons pour contrôler également la TV est fournie. Elle possède des boutons pour un accès direct à Netflix, Prime Video, Disney Plus et Amazon Music.

Notez qu'il est possible de coupler un casque bluetooth avec le Fire TV Stick afin de regarder tranquillement la TV sans déranger vos proches. 

Pour plus d'informations, n'hésitez pas à consulter notre dossier pratique dédié à la clé Fire TV Stick.


> Voir l'offre
249,99 €Ecran PC 27 pouces Gigabyte M27Q (QHD, IPS, 0.5 ms, 170 Hz) à 249,99 €
Valable jusqu'au 26 Janvier

RueDuCommerce solde l'écran PC 27 pouces Gigabyte M27Q qui passe à 249,99 € au lieu de 340 €. Cet écran possède une dalle 27 pouces QHD (2560x1440) à 0.5 ms et à 170 Hz (FreeSync Premium et Adaptive Sync). Son pied est réglable en hauteur et en inclinaison.


> 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