SDWORD

area4aman44 Messages postés 5 Statut Membre -  
area4aman44 Messages postés 5 Statut Membre -
bonjour
je doit programmer en java un projet déjà fait en C++;
alors j'ai une fonction qui retourne un SDWORD:

SDWORD ASCIIMult10ToSDWord(char *str)
{
SDWORD n=0;
BYTE i=0, neg=0;

//Convertie la partie avant le point en valeur entiere
while((str[i]!='.')&(str[i]!=0)) // Jusqu'a rencontrer '.' ou fin de chaine
{
//Si carac est un chiffre
if ((str[i]>='0')&(str[i]<='9'))
n = n*10 + (str[i]-'0');
//Si carac est le signe -
if (str[i]=='-')
neg=1;
i++;
}

i++; // pour passer le caractere '.'
n = n*10;
//Convertie le premier caractere après le point en valeur entiere
if ((str[i]>='0')&(str[i]<='9'))
{
n = n + (str[i]-'0');
}

//Tient compte du signe si necessaire
if (neg!=0)
n = -n;

return(n);
}

je suis débutante en java, mais j'ai cherché l'équivalent de SDWORD en java mais je n'ai pas trouvé...........

quelq'un peut m'aider.

merci

2 réponses

Mahmah Messages postés 497 Statut Membre 125
 
Salutations,

SDWORD n'est pas un type standard du C++, il est donc nécessairement défini quelque part.

Sous Windows on trouve la définition suivante dans sqltypes.h:
typedef long int SDWORD;

Il te faut donc un type primitif Java qui soit signé et codé sur 32bits aussi bien pour les OS32 et 64 bits. (Chose très certainement invérifiable en Java) Je dirais int sans vraiment savoir ce qu'en fera la machine virtuelle java. Cela n'a vraiment d'importance que si des masques sont utilisés.

M.
0
area4aman44 Messages postés 5 Statut Membre
 
bonjour

merci pour ta réponse ,
donc dans mon programme en java je vais le déclarer en int.

merci
0