AFFICHER LA DATE ET L'HEURE [CODE EN C++] [G++]

Signaler
Messages postés
6
Date d'inscription
lundi 28 janvier 2002
Statut
Membre
Dernière intervention
18 mars 2002
-
Messages postés
5
Date d'inscription
lundi 23 août 2004
Statut
Membre
Dernière intervention
3 juin 2011
-
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/9129-afficher-la-date-et-l-heure-code-en-c-g

Messages postés
5
Date d'inscription
lundi 23 août 2004
Statut
Membre
Dernière intervention
3 juin 2011

#include 
#include <ctime>//on peut remplacer <time.h> par <ctime>

using namespace std;

int main (int argc, char const *argv[])
{
time_t now;
char *_date;

//initialisation de la date
cout << "Valeur de now avant initilisation " << now << endl;
_date = ctime(&now);
cout << "la date aujourd'hui est : "<< _date << endl;

time(&now);
cout << "valeur de now après initilisation " << now << endl;
_date = ctime(&now);
cout << "la date du jour : " << _date << endl;
 
return 0;
}
Messages postés
20
Date d'inscription
mardi 22 mai 2007
Statut
Membre
Dernière intervention
4 juin 2007

Est-il possible en C d'afficher la date sans l'heure??

Merci ..
Messages postés
3
Date d'inscription
dimanche 5 novembre 2006
Statut
Membre
Dernière intervention
27 septembre 2007

Bonjour,

simplement pour résumer tout ce qui a été dit:
1- le source est erroné et ne donne pas la bonne date (1970)
2- stdio.h est inutile
3- Pour avoir la bonne date, il faut initialiser la variable now avec time(&now)

Code corrigé:
//#include <stdio.h> //Inutile
#include
#include <time.h>
using namespace std;

int main(int argc, char *argv[])
{
time_t now;
char *_date;

// 1- Erreur: on n'initialise pas la variable now avec la date en secondes
cout << "Valeur de now avant initialisation: " << now;
_date = ctime(&now); // Récupération de la date sous forme de chaîne à partir de la date en secondes
cout << "La date d'aujourd'hui est: " << _date;


// 2-Correct: on récupère la date en seconde avant de la récupérer sous forme de chaîne
time(&now); // Récupération de la date d'aujourd'hui en seconde
cout << "Valeur de now après initialisation: " << now;
_date = ctime(&now); // Récupération de la date sous forme de chaîne à partir de la date en secondes
cout << "La date d'aujourd'hui est: " << _date;
}

Si le source pouvait être mis à jour avec les corrections (administrateur?), ce serait très utile pout beaucoup de monde...

Cordialement.

PS:
compilé avec g++ sous Mac OS X.
Messages postés
13
Date d'inscription
vendredi 4 mars 2005
Statut
Membre
Dernière intervention
17 décembre 2005

@Cethywolf : Juste pour savoir, pourquoi tu t'es fait suer à mettre une boucle for qui t'affiche 50 fois la dates???

ce code suffit amplement:

#include
#include <time.h>
using namespace std;

int main(int argc, char *argv[])
{

long H;
time(&H);
cout<<ctime(&H)<<"\n";
system("pause");
}

cordialement
Afficher les 20 commentaires