OVH Cloud OVH Cloud

copier un bloc de caracteres

4 réponses
Avatar
JLP INFO
comment fait-on pour copier un bloc de caracteres en connaissant son adresse
(pointeur) ainsi que sa longueur ?
la fonction TRANSFERT suppose de reserver a l'avance la taille si on ne veut pas
ecraser des zones memoires ou des donnees
--
Ce message a été posté via la plateforme Web club-Internet.fr
This message has been posted by the Web platform club-Internet.fr

http://forums.club-internet.fr/

4 réponses

Avatar
Jean Cougnaud
Bonjour,

Qu'est-ce que c'est comme type de données ?

Dans quoi veux-tu la récupérer ?

Des idées comme ça :

- tu créés un champ dont la taille fait la taille maximum du bloc adresse
susceptible d'être transferé puis tu fais le transfert
- tu récupères le contenu du bloc caractère par caractère ou bloc par bloc
en effectuant une translation d'adresse au fur et à mesure de la
récupération
- Tu créé un tableau dynamique que tu agrandi selon les besoins puis tu fais
le transfert

Cordialement

Jean

"JLP INFO" a écrit dans le message de
news:


comment fait-on pour copier un bloc de caracteres en connaissant son


adresse
(pointeur) ainsi que sa longueur ?
la fonction TRANSFERT suppose de reserver a l'avance la taille si on ne


veut pas
ecraser des zones memoires ou des donnees
--
Ce message a été posté via la plateforme Web club-Internet.fr
This message has been posted by the Web platform club-Internet.fr

http://forums.club-internet.fr/


Avatar
JLP INFO
Bonjour,

Qu'est-ce que c'est comme type de données ?

Dans quoi veux-tu la récupérer ?

Des idées comme ça :

- tu créés un champ dont la taille fait la taille maximum du bloc adresse
susceptible d'être transferé puis tu fais le transfert
---> justement on ne connait pas a l'avance la taille

- tu récupères le contenu du bloc caractère par caractère ou bloc par bloc
en effectuant une translation d'adresse au fur et à mesure de la
récupération
---> COMMENT FAIT-ON, AVEC QUELLES INSTRUCTIONS ?
j'ai beau chercher mais je ne connais la syntaxe pour recuperer le contenu d'une
adresse memoire

merci

--
Ce message a été posté via la plateforme Web club-Internet.fr
This message has been posted by the Web platform club-Internet.fr

http://forums.club-internet.fr/
Avatar
Jean Cougnaud
Bonjour,

Si tu connais la taille maximum que tu auras un jour à traiter, tu peux
créer une variable chaine de cette taille et faire un transfert dedans. Même
si cela ne remplit pas tout ce n'est pas grave.

Si tu ne connais pas cette taille, tu peux faire un transfert bloc par bloc
ou caractère par caractère avec la fonction :

Transfert(&ChaîneDest, &ChaîneSource, LongueurTransfert)

Dans ce cas, il faut décaler l'adresse de départ à chaque fois avec la
longueur transférée. En gros on boucle autant qu'il faut pour lire la chaîne
source en entier.

Pour exemple, récupération caractère par caractère :

Pour i=1 a TailleDeChaineSource (que tu connais d'après ce que j'ai compris)
transfert(&ChaineDest , &ChaineSource + i ,1)
// traitement du caractère récupéré dans ChaineDest
...
fin

Cordialement

Jean Cougnaud



"JLP INFO" a écrit dans le message de
news:

Bonjour,

Qu'est-ce que c'est comme type de données ?

Dans quoi veux-tu la récupérer ?

Des idées comme ça :

- tu créés un champ dont la taille fait la taille maximum du bloc adresse
susceptible d'être transferé puis tu fais le transfert
---> justement on ne connait pas a l'avance la taille

- tu récupères le contenu du bloc caractère par caractère ou bloc par bloc
en effectuant une translation d'adresse au fur et à mesure de la
récupération
---> COMMENT FAIT-ON, AVEC QUELLES INSTRUCTIONS ?
j'ai beau chercher mais je ne connais la syntaxe pour recuperer le contenu


d'une
adresse memoire

merci

--
Ce message a été posté via la plateforme Web club-Internet.fr
This message has been posted by the Web platform club-Internet.fr

http://forums.club-internet.fr/


Avatar
Tanguy
S = Complete("",nTaille)
Transfert(&S,Adresse,nTaille)