FRACTIONS_DLL, UNE DLL QUI CALCULE DES FRACTIONS

lynxtyle Messages postés 79 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 31 octobre 2011 - 18 sept. 2008 à 22:33
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 19 mai 2009 à 09:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47998-fractions-dll-une-dll-qui-calcule-des-fractions

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
19 mai 2009 à 09:53
ton programme a cassé le vase de Soissons

pas cool, ghuysmans99 !
ghuysmans99 Messages postés 2496 Date d'inscription jeudi 14 juillet 2005 Statut Contributeur Dernière intervention 5 juin 2016 1
18 mai 2009 à 19:36
Comment tu voudrais que mon programme face ça ?
Y'a pas une seule API ayant le moindre rapport avec les fichiers ...
dgiancarlo Messages postés 1 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 18 mai 2009
18 mai 2009 à 17:17
g pris ce fichier et il m'a supprimé un gros dossier important, le programme à disparut avec me fichiers
ghuysmans99 Messages postés 2496 Date d'inscription jeudi 14 juillet 2005 Statut Contributeur Dernière intervention 5 juin 2016 1
24 sept. 2008 à 20:24
@ biga1 : Merci !! (une note ne ferait pas de mal)
biga1 Messages postés 8 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 15 avril 2011
24 sept. 2008 à 20:19
pssss pas mal
ghuysmans99 Messages postés 2496 Date d'inscription jeudi 14 juillet 2005 Statut Contributeur Dernière intervention 5 juin 2016 1
19 sept. 2008 à 19:15
void FRACDLLEX FractionReduceD(T_Fraction* Fraction)
{
T_Fraction tmp; // je crois que tu l'avais oublié ...
FractionReduce(Fraction, tmp);
Fraction->Num = tmp.Num;
Fraction->Den = tmp.Den;
}

Sinon OK, je modifie
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
19 sept. 2008 à 11:06
OUPS, tapé trop vite:
On obtient donc:
void FRACDLLEX FractionReduceD(T_Fraction* Fraction)
{
T_Fraction tmp
FractionReduce(Fraction, tmp);
Fraction->Num = tmp.Num;
Fraction->Den = tmp.Den;
}
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
19 sept. 2008 à 10:05
void FRACDLLEX FractionReduceD(T_Fraction* Fraction)
{
T_Fraction* tmp = new(T_Fraction);
FractionReduce(Fraction,tmp);
memcpy(Fraction,tmp,sizeof(T_Fraction));
delete(tmp);
}

Une struct T_Fraction faisant 8 octets, on le met sur pile au lieu de faire une alloc.
memcpy provoque une boucle, inutile ici.
On obtient donc:
void FRACDLLEX FractionReduceD(T_Fraction* Fraction)
{
T_Fraction tmp
FractionReduce(Fraction, tmp);
Fraction.Num = tmp.Num;
Fraction.Den = tmp.Den;
}
lynxtyle Messages postés 79 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 31 octobre 2011 2
18 sept. 2008 à 22:33
des commentaires et surtout un exemple d'utilisation de la dll ne seraient pas du luxe pour les débutants (et oui le but est l'apprentissage et non la livraison de code brute à copier/coller sans savoir ce qu'on fait)

sinon merci pour cette source intéressante
Rejoignez-nous