Identification des types entre C et vb
Résolu
ssebounet
Messages postés
163
Statut
Membre
-
teebo Messages postés 33585 Date d'inscription Statut Contributeur Dernière intervention -
teebo Messages postés 33585 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous!!!
J'ai une dll qui a été ecrite en C.
mais je voudrai l utiliser avec du VB.
il faudrait que j identifie les variables de type
typedef char
typedef unsigned char
typedef short int
typedef long
typedef unsigned short int
typedef unsigned long
il y en a qques une que je sais mais pas beaucoup...
long => long
mais les autres... bof bof
les unsigned je sais pas et encore moins les short int...
quelqu'un saurait-'il cela???
Merci beaucoup d'avance
Séb
J'ai une dll qui a été ecrite en C.
mais je voudrai l utiliser avec du VB.
il faudrait que j identifie les variables de type
typedef char
typedef unsigned char
typedef short int
typedef long
typedef unsigned short int
typedef unsigned long
il y en a qques une que je sais mais pas beaucoup...
long => long
mais les autres... bof bof
les unsigned je sais pas et encore moins les short int...
quelqu'un saurait-'il cela???
Merci beaucoup d'avance
Séb
13 réponses
-
Rebonjour,
Alors en fait j ai trouver quelques correspondances...
char *... doit etre un string
sort int doit etre un integer
long reste long
mais les unsigned je sais pas du tout!!
quelqu'un pourrait me le dire svp???
Merci d'avance
Séb -
Salut, tu peux essayer any pour voir si ça marche déjà...
Qui va en mer pour son plaisir,
irait en enfer pour ses vacances -
Sinon tu peux oublier les unsigned, ça créera quelques problèmes dans certains cas sans doute, mais dans la majorité des cas ça passe apparement... (tu parles allemand?)
Qui va en mer pour son plaisir,
irait en enfer pour ses vacances -
Bon si jamais tu le comprend, une discussion intéressante là...
http://www.visualbasic.at/forum/showflat.php?Cat=&Number=26310&Main=26304
c'est juste en complément, pas grave sinon :O)
Qui va en mer pour son plaisir,
irait en enfer pour ses vacances -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
okok ok
merci mais non je parles pas du tout allemand!!!
sinon les unsigned je les laisse dans la dll et en fait j'identifie comme s'ils n'y etaient pas?
c est bien ca?
par example:
char -> string
unsigned char -> string
???
idem pour les autres?
c est bien ca??
en tout cas merci beaucoup pour tes reponses!!!
Séb -
Oui c'est bien ça, le seul problème est quand tu dépasses les limites du type, tu risques de ne pas avoir les messages d'erreur mais un comportement bizzaroïde
Qui va en mer pour son plaisir,
irait en enfer pour ses vacances -
-
C'est à dire que si par exemple tu te retrouve avec un entier trop grand, tu n'auras pas l'erreur correspondante mais tu appeleras la fonction avec un entier négatif...
Si ma mémoire est bonne...
Qui va en mer pour son plaisir,
irait en enfer pour ses vacances -
Mouais bon je verrai....
je vois pas trop pour le moment mais je comprendrais bien qd yaura des problemes...
mais
la plage unsigned long = -x <-> x
long = 0 <-> 2x
donc la donc je pourrais jamais avoir en entrer un chiffre trop grand le probleme que je pourais avoir c est justement un chiffre negatif!!
c est bien ca ???
Merci d'avance
Séb -
Oui :-S
Qui va en mer pour son plaisir,
irait en enfer pour ses vacances -
ok ok ok merci beaucoup je reecrirai ici quand j y serai!!
Merci
Séb -
Resalut!!!
Bon en fait j'ai des gros souci et je suis pas sur mais je pense que ca vient des type unsigned!!!
Donc en fait dans un type que je cré, dans une librairie en C elle est tout en unsigned mais le tout fait 12 bytes!!
C'est à dire qu'avec un unsigned long en c je l'identifie à un long en vb!! mais la plage n'est pas la meme!!
Donc est-il possible de mettre un string * 4???
Un long en VB vaut 4 bytes ainsi qu'en C il me semble donc mettre un string *4 en VB reviendrait au meme qu'un unsigned long en C
Est-ce que c'est vrai???
Merci beaucoup!!!!
Séb -
Re :o)
Désolé, je crois que j'ai pas assez dormi je ne te suis pas bien, j'ai par contre trouvé ça qui à première vue comporte des infos intéressantes:
http://tinyurl.com/6n2rb