Fermer un tableau

rimbaw Messages postés 10 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 29 janvier 2008 - 29 janv. 2008 à 13:20
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 - 29 janv. 2008 à 23:48
Salut à tous, je programme en delphi7 et j'ai fait une déclaration d'un tableau statique genre "montableau : array[1..2048] of Char" auquel j'affecte des données qui ne font pas toujours 2048 caracteres et je voudrais par la suite pouvoir refermer mon tableau a la fin d'une affectation mais je sais comment fermer mon tableau pour ne pas avoir des imprevus.
Quelqu'un pour me donner un coup de main.

Chaque parole a ses ressentiments... le silence aussi.

4 réponses

Utilisateur anonyme
29 janv. 2008 à 15:23
Salut,

Pour commencer un petit tour ici: Merci de chercher avant de poser une telle question.
Sinon ici et ici . Ca m'a pris plus de temps pour te répondre que pour trouver la solution
0
rimbaw Messages postés 10 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 29 janvier 2008
29 janv. 2008 à 17:12
Tous ces liens ne répondent pas à ma question. Voilà mon probleme de façon claire.
si je fais cette declaration : "montablo : array[1..2048] of Char;" et ensuite je fais ceci
receivebuffer(montablo,sizeof(montablo)); //cette fonction lit les données sur le port et les charge dans mon tableau. Je voudrais pouvoir fermer ce tableau après lecture sur le port. parceque maintenant je reçois des caracteres bizarres en plus dans mon tableau.

Merci
Chaque parole a ses ressentiments... le silence aussi.
0
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
29 janv. 2008 à 23:46
quand tu utilise un tableau de taille fixe (array[0..n] of byte, array[0..n] of char) il est important de savoir combien d'octet on pus etre copier a l'interieur.

il faut toujours regarder si les routine fournisse un retour de ce nombre (ce qui serait illogique dans le cas contraire).

exemple :

type
  pCharBuffer = ^TCharBuffer;
  TCharBuffer  = array[0..n] of char;

var
  pBuffer : pCharBuffer;
  Size : longword;

begin
  New(pBuffer);
  try
    Size := Truc.Read(pBuffer^, SizeOf(TCharBuffer));
    Move(pBuffer^, [machin], Size);
  finally
    dispose(pBuffer);
  end;
end;

<hr size="2" width="100%" />
http://deefaze.gnomz.com
0
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
29 janv. 2008 à 23:48
d'ailleur en passant :

var MonTableau : array[0..2047] of Char;

<hr size="2" width="100%" />
http://deefaze.gnomz.com
0
Rejoignez-nous