Bonjour,
j'expérimente quelques bidouillage de données qui m'amènent à plusieurs questions (Excusez-moi si je déroge un peu à la règle "1 question = 1 post" ):
Voici une classe, sensée remplacer une structure (dans un de mes anciens programme en C):Ensuite vient l'instanciation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 static class quatreShorts { short donnee1; short donnee2; short donnee3; short donnee4; }Dès lors, j'ai 8 octets disponibles en mémoire pour structure1, et 8 autres octets pour structure2.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 quatreShorts structure1 = new quatreShorts(); quatreShorts structure2 = new quatreShorts();
Faisons un peu de remplissage d'octets:Et maintenant une bidouille:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 structure1.donnee1 = 1; structure1.donnee2 = 2; structure1.donnee3 = 3; structure1.donnee4 = 4;En une instruction, je vois les 4 membres de structure2 prendre les même valeur que ceux de structure1. En fait j'ai positionné structure2 sur l'emplacement mémoire de structure1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part structure2 = structure1;
Question1: que devient la mémoire réservée pour structure2, dès lors que cette zone devient "orpheline" puisque je n'ai plus de moyen de pointer dessus ?
En fait, ce que je voulais faire à l'origine, c'est un système permettant de copier rapidement les 8 octets de structure1 vers structure2.
Question2: existe-t-il un moyen de faire cette copie de 8 octets depuis l'emplacement pointé par structure1, vers l'emplacement pointé par structure2 ? Autre que:Ce qui me chatouille un peu, c'est que ces 8 octets, c'est l'équivalent d'un long.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 structure2.donnee1 = structure1.donnee1; /.../
or une instruction du genreferait cette copie instantanément... si vous voyez ce que je veux dire
Code : Sélectionner tout - Visualiser dans une fenêtre à part maVariableLong2 = maVariableLong1;
Merci & @ bientôt
Partager