Bonjour à tous
je dispose d'une signature de fonction de ce type
Code : Sélectionner tout - Visualiser dans une fenêtre à part
int lire(int var1,int var2, BYTE* var3)
cette fonction permet de lire des données en bloc sur du matériel (pas important).
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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;
}
  1. 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.

  1. le même problème se pose pour l'écriture d'un bloc avec la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ecrire (int,int, BYTE* buffer)

  1. que contient vraiment buffer? est-il un tableau d'entiers? la question est surement bête mais vous la pour me le prouver

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