Bonjour à tous
je dispose d'une signature de fonction de ce type
cette fonction permet de lire des données en bloc sur du matériel (pas important).Code:int lire(int var1,int var2, BYTE* var3)
j'arrive à lire ces données une par une mais je voudrai le faire par bloc.
supposant qu'il y 15 données (15 int ou 15 double ou 15 booleen) à lire.
sachant que BYTE est un unsigned char, comment faire pour récupérer ces 15 données et les afficher. le code suivant est-il correct ( je ne peux pas le tester) :
Code:
1
2
3
4
5
6
7 unsigned char buffer[150]; lire(1,1, buffer); for( int i = 0; i< 10; i++) { cout << " data " << i << " = " << buffer[i] <<endl; }
- comment connaitre le nombre de données récupérées pour éviter que buffer[i] pointe sur autre chose que les données lues.
- le même problème se pose pour l'écriture d'un bloc avec la fonction
Code:ecrire (int,int, BYTE* buffer)
- que contient vraiment buffer? est-il un tableau d'entiers? la question est surement bête mais vous la pour me le prouver :D
je rappelle que cette question est générique et indépendante d'où je récupère les données. les fonctions Lecture et écriture sont dans une Dll sans aucune autre information que la signature.
merci d'avance à tous pour votre aide