Bonjour,
je recherche une fonction en C pour oter un certain nombre de jour à la date courante (obtenu par la fonction getdate (&d)
Merci
Cordialement
Tom
Bonjour,
je recherche une fonction en C pour oter un certain nombre de jour à la date courante (obtenu par la fonction getdate (&d)
Merci
Cordialement
Tom
j'utilise sous window SYSTEMTIME Date; et GetLocalTime(&Date);
Je peux t'aider avec cette structure et cette fonction, si tu précises un peu plus ce que tu veux faire.
Salut
Je souhaite faire une soustraction de n jours à la date courante.
En fait comme je ne m'y retrouvais pas dans l API Windows j'ai opte pour une autre solution.
Je transforme la date en un numero de jour entre 1 et 365, puis je retranche n jours, enfin je reviens en format date jj/MM/yyyy
C'est pas genial mais ca marche...
Merci de ton aide!
Tom
Dans les deux cas tu es obligé de travailler avec des valeurs entières puis de formater ces valeurs en chaîne de caractères.
Pour ton cas fais attention que toutes les années ne font pas 365 jours.
L'implémentation est assez cocasse, je dirais qu'il faut d'abord tenir compte du nombre de jours à retrancher. Si le nombre de jours à oter portent sur plusieurs années, créer une table qui donnent le nombre de jours exacts de chaque année (à cause des années bissextiles) et le nombre de jour de chaque mois.
Puis avec le résultat de la soustraction déterminer par rapport à la table créer dans quelle année on se situe puis dans quel mois et enfin quel jour.
Si ta solution convient gardes là. Si jamais tu dois gérer les cas ou la soustraction portent sur plusieurs années en arrière et que tu te dépatouilles pas, je t'aiderai.
Sinon tu as la classe CTime qui doit gérer ce genre de chose, mais je n'ai pas trop tester car je suis plutôt du genre à réinventer la roue, au moins pour comprendre ce que je fais.
Pour les année bisextiles j'ai obtenu un code ingenieux
int Bissextile(int annee)
{
return((annee % 4 == 0 && annee % 100 != 0) || annee % 400 == 0);
}
simplissime mais fallait le cracher
Bravo à l'auteur dont j'ignore le nom...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager