Post incrementation et decrementation en VB

Résolu
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006 - 6 mai 2006 à 21:03
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006 - 7 mai 2006 à 22:04
Bonsoir à tous,

quelqu'un saurait-il me dire convertir une post-decrementation/incrementation de C en VB ?

j'ai une fonction C que je cherche à convertir en VB et dans celle-ci j'ai une expression :

(dest++) = (src++) ?

comment faire pour implementer les ++ et -- ?

merci d'avance

Fabien

10 réponses

majnounmajda Messages postés 33 Date d'inscription lundi 4 octobre 2004 Statut Membre Dernière intervention 15 mai 2006
6 mai 2006 à 21:49
Salut,src++ 1 -------------------> src src + 1

src++ 2 -------------------> src src + 2

majnounmajda@hotmail.com
3
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 mai 2006 à 11:09
Sauf que ce que tu as oublié de nous dire c'est que sest++ et src++ sont en fait des pointeurs (a cause de l'étoile devant !)
Ce n'est donc pas (dest++)=(src++) mais *(dest++)=*(src++) !!!!!
Soit en gros Ce que pointe dest est égal à ce que pointe src et on augment les deux pointeurs dans la foulée !
Comme on a pas de pointeur en VB, il va falloir revoir le code dans son ensemble !!
3
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006
6 mai 2006 à 21:52
ouais je sais mais je pensais qu'il y avait un autre moyen pour le faire :)

donc concrètement ce que je dois mettre c'est

src +=1
dest += 1
dest = src ?
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 mai 2006 à 09:52
Il y a un bug dans ton code C !!!

(dest++) = (src++)

dest++ n'est pas une L-value !!!

CR
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 mai 2006 à 10:05
majnounmajda <
src++ = 1 ---------> Bug aussi en C (Pour la même raison : src++ n'est pas une LValue)
src++ = 2 ---------> Bug aussi en C ( toujorus pour la même raison)
0
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006
7 mai 2006 à 10:42
le code source n'est pas le mien : http://www-math.mit.edu/~auroux/software/fshtool.zip

la compilation est le logiciel fonctionne parfaitement derrière donc visiblement c'est bon :)

maintenant peut-être qu'il y a 4 ans c'était bon et maintenant plus ... ou alors qu'on ne fait plus comme ça mais que ça marche tout de même ?

c'est vrai que me suis pas attardé dessus du moment que ça fonctionne :)

voilà la fonction :



<meta http-equiv= "Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Kate, the KDE Advanced Text Editor">

void unquotify(char *src,int len,unsigned char *dest)
{
while (len--) {
if (*src! ='%')
*(dest++)= *(src++);
else {
src++;
if (*src< ='9') *dest= (*src-'0'); else *dest =10+((*src-'A')&15);
*dest= (*dest<<4); src++;
if (*src< ='9') *dest+= (*src-'0'); else *dest+ =10+((*src-'A')&15);
src++; dest++;
}
}
}
0
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006
7 mai 2006 à 10:43
il n'y a aucun moyen d'éditer ces messages ?

parce que là ça décale tout le topic ... :(
0
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006
7 mai 2006 à 17:28
ouais effectivement j'ai pas pensé mentionner ça ... mais comme un unsigned char * est un byte() je pensais que c'était pas nécessaire :(

donc aucun moyen de définir ça en VB ?
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
7 mai 2006 à 22:01
passe par des tableaux:

dest(i) = src(j)

i = i + 1

j = j + 1

Daniel
0
FabulousF Messages postés 8 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 mai 2006
7 mai 2006 à 22:04
ok je vais essayer ça merci :)
0
Rejoignez-nous